简体   繁体   English

轴:faultString:org.xml.sax.SAXParseException:文件过早结束

[英]Axis: faultString: org.xml.sax.SAXParseException: Premature end of file

I have deployed a webservice using servletexec configured with IIS and i can successfully access webservice using anonymous account. 我已经使用配置了IIS的servletexec部署了Web服务,并且我可以使用匿名帐户成功访问Web服务。 But when I enable Windows Integrated Authentication I am getting following error. 但是,当我启用Windows集成身份验证时,出现以下错误。

  - ntlm authentication scheme selected
- Discarding unexpected response: HTTP/1.1 100 Continue
AxisFault
 faultCode: {http://schemas.xmlsoap.org/soap/envelope/}Server.userException
 faultSubcode: 
 faultString: org.xml.sax.SAXParseException: Premature end of file.
 faultActor: 
 faultNode: 
 faultDetail: 
    {http://xml.apache.org/axis/}hostname:akvm

org.xml.sax.SAXParseException: Premature end of file.
    at org.apache.axis.message.SOAPFaultBuilder.createFault(SOAPFaultBuilder.java:222)
    at org.apache.axis.message.SOAPFaultBuilder.endElement(SOAPFaultBuilder.java:129)
    at org.apache.axis.encoding.DeserializationContext.endElement(DeserializationContext.java:1087)
    at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.endElement(AbstractSAXParser.java:633)
    at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.scanEndElement(XMLNSDocumentScannerImpl.java:719)
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(XMLDocumentFragmentScannerImpl.java:1685)
    at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:368)
    at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:834)
    at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:764)
    at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:148)
    at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1242)
    at javax.xml.parsers.SAXParser.parse(SAXParser.java:375)
    at org.apache.axis.encoding.DeserializationContext.parse(DeserializationContext.java:227)
    at org.apache.axis.SOAPPart.getAsSOAPEnvelope(SOAPPart.java:696)
    at org.apache.axis.Message.getSOAPEnvelope(Message.java:435)
    at org.apache.axis.handlers.soap.MustUnderstandChecker.invoke(MustUnderstandChecker.java:62)
    at org.apache.axis.client.AxisClient.invoke(AxisClient.java:206)
    at org.apache.axis.client.Call.invokeEngine(Call.java:2784)
    at org.apache.axis.client.Call.invoke(Call.java:2767)
    at org.apache.axis.client.Call.invoke(Call.java:2443)
    at org.apache.axis.client.Call.invoke(Call.java:2366)

It looks like that the Axis client does not like the NTLM authentication challenge. 看起来Axis客户端不喜欢NTLM身份验证质询。 See error message at the top: 请参阅顶部的错误消息:

Discarding unexpected response: HTTP/1.1 100 Continue

After which there is no XML for Axis to parse, which is why you're getting premature end of file. 之后,没有可供Axis解析的XML,这就是为什么文件过早结束的原因。

In order to use NTLM with Axis (1.4), you'll have to use the CommonsHTTPSender instead of the standard transport: 为了将NTLM与Axis(1.4)一起使用,您必须使用CommonsHTTPSender而不是标准传输:

<transport name="http" pivot="java:org.apache.axis.transport.http.CommonsHTTPSender">
</transport>

in your client-config.wsdd and then set up the NTLM username and password through the Stub object. client-config.wsdd ,然后通过Stub对象设置NTLM用户名和密码。

The "premature end of file" type errors from the xerces SAX implementation usually indicates that the SAX parser expected data, but got none (not null , but an initialized empty InputSource ). xerces SAX实现中的“文件的结尾过早”类型错误通常表示SAX解析器期望数据,但是没有(不是null ,而是初始化为空的InputSource )。 From the stack trace, it looks as if the axis SOAP handler expects a SOAP xml message to arrive, but the message is empty. 从堆栈跟踪中,看起来好像轴SOAP处理程序期望SOAP xml消息到达,但该消息为空。 My knowledge of ISS and its infrastructure is close to nil, can you get any log messages from the server? 我对ISS及其基础结构的了解几乎为零,您可以从服务器获取任何日志消息吗?

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 org.xml.sax.SAXParseException:*VALID* XML 的文件过早结束 - org.xml.sax.SAXParseException: Premature end of file for *VALID* XML org.xml.sax.SAXParseException:过早的结束文件 - org.xml.sax.SAXParseException: Premature end file org.xml.sax.SAXParseException:带有jaxbUnmarshaller的文件过早结束 - org.xml.sax.SAXParseException: Premature end of file with jaxbUnmarshaller 引起原因:org.xml.sax.SAXParseException:文件过早结束 - Caused by: org.xml.sax.SAXParseException: Premature end of file org.xml.sax.SAXParseException:文件过早结束 - org.xml.sax.SAXParseException: Premature end of file org.xml.sax.SAXParseException:文件过早结束 - org.xml.sax.SAXParseException: Premature end of file 文件过早结束。 org.xml.sax.SAXParseException; 文件过早结束。[致命错误]:-1:-1: - Premature end of file. org.xml.sax.SAXParseException; Premature end of file.[Fatal Error] :-1:-1: org.xml.sax.SAXParseException; 尝试从请求中获取 xml 输入时文件过早结束 - org.xml.sax.SAXParseException; Premature end of file when trying to get an xml input from request 解析RSS时出错-&gt; org.xml.sax.SAXParseException; lineNumber:1; columnNumber:1; 文件过早结束 - Error Parsing RSS -> org.xml.sax.SAXParseException; lineNumber: 1; columnNumber: 1; Premature end of file Java JaxB Unmarshaller提供org.xml.sax.SAXParseException文件的过早结尾 - Java JaxB Unmarshaller giving org.xml.sax.SAXParseException Premature end of file
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM