I'm trying to connect to a bugzilla server using xmlrpc but I get an error when trying to parse http://www.w3.org/TR/html4/loose.dtd. I've seen other solutions but as I understand those were server-side solutions. I don't own the server. Is there any way I can fix this client side?
[Fatal Error] loose.dtd:31:3: The declaration for the entity "HTML.Version" must end with '>'.
Exception in thread "main" org.apache.xmlrpc.client.XmlRpcClientException: Failed to parse server's response: The declaration for the entity
"HTML.Version" must end with '>'.
...
Caused by: org.xml.sax.SAXParseExceptionpublicId: -//W3C//DTD HTML 4.01 Transitional//EN; systemId: http://www.w3.org/TR/html4/loose.dtd; li
neNumber: 31; columnNumber: 3; The declaration for the entity "HTML.Version" must end with '>'.
...
Caused by:
org.xml.sax.SAXParseExceptionpublicId: -//W3C//DTD HTML 4.01 Transitional//EN; systemId: http://www.w3.org/TR/html4/loose.dtd; lineNumber: 3
1; columnNumber: 3; The declaration for the entity "HTML.Version" must end with '>'.
...
Below is the relevant redacted scala code that generates the error.
import org.apache.xmlrpc.client.XmlRpcClient
import org.apache.xmlrpc.client.XmlRpcClientConfigImpl
import java.net.URL
import scala.collection.JavaConverters._
object BugzillaHello {
val portal = new URL("http://company.domain.com/bugzilla/xmlrpc.cgi")
def main(args: Array[String]): Unit = {
val config = new XmlRpcClientConfigImpl()
config.setServerURL(portal)
config.setEnabledForExtensions(true)
val client = new XmlRpcClient()
client.setConfig(config)
val cred = Map("login" -> "my username", "password" -> "my password").asJava
val result = client.execute("User.login", Array[Object](cred))
println("Result = " + result)
}
}
It shouldn't be serving an HTML file but is because xlmrpc isn't enabled.