我使用axis来打webservice,我提供了Object []参数,偶尔会发生异常,如下所示:

AxisFault faultCode:{http://schemas.xmlsoap.org/soap/envelope/}Server.userException faultSubcode:faultString:org.xml.sax.SAXParseException; lineNumber:1; columnNumber:1;序言中不能有内容 . faultActor:faultNode:faultDetail:{http://xml.apache.org/axis/}stackTrace:org.xml.sax.SAXParseException; lineNumber:1; columnNumber:1;序言中不能有内容 . 位于org.apache.xerces.util.ErrorHandlerWrapper.fatalError(未知来源)的org.apache.xerces.util.ErrorHandlerWrapper.createSAXParseException(未知来源)org.apache.xerces.impl.XMLErrorReporter.reportError(未知来源)org org.apache.xerces.impl.XMLScanner.reportFatalError(未知来源)中的.apache.xerces.impl.XMLErrorReporter.reportError(未知来源)org.apache.xerces.impl.XMLDocumentScannerImpl $ PrologDispatcher.dispatch(未知来源)at org位于org.apache的org.apache.xerces.parsers.XML11Configuration.parse(未知来源)的.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(未知来源)位于org.apache的org.apache.xerces.parsers.XML11Configuration.parse(未知来源)位于org.apache的org.apache.xerces.pars上的org.apache.xerces.parsers.AbstractSAXParser.parse(未知来源)的.xerces.parsers.XMLParser.parse(未知来源)$ jAXPSAXParser.parse(未知来源) org.apache.axis.encoding.DeserializationC上的.xerces.jaxp.SAXParserImpl.parse(未知来源)位于org.apache.axis上的org.apache.axis.SOAPPart.getAsSOAPEnvelope(SOAPPart.java:696)的ontext.parse(DeserializationContext.java:227)org.apache.axis.Message.getSOAPEnvelope(Message.java:435)位于org.apache.axis.client.Call.invokeEngine(Call.java)的org.apache.axis.client.AxisClient.invoke(AxisClient.java:206)中的.handlers.soap.MustUnderstandChecker.invoke(MustUnderstandChecker.java:62) :2784)org.apache.axis.client.Call.invoke(Call.java:2767)org.apache.axis.client.Call.invoke(Call.java:2443)atg.apache.axis.client . Call.invoke(Call.java:2366)在org.apache.axis.client.Call.invoke(Call.java:1812)

例外似乎它使用的xml是BOM或一些错误的字符,但我只提供Object []参数,而不是xml.And异常只发生 . 快速的帮助将不胜感激,谢谢 . 以下是我的代码:

**public java.lang.String fireRule(java.lang.String arg0, java.lang.String arg1, java.lang.String arg2,
        java.lang.String arg3, boolean arg4) throws java.rmi.RemoteException {
    org.apache.axis.client.Call _call = createCall();
    _call.setOperation(_operations[0]);
    _call.setUseSOAPAction(true);
    _call.setSOAPActionURI("");
    _call.setEncodingStyle(null);
    _call.setProperty(org.apache.axis.client.Call.SEND_TYPE_ATTR, Boolean.FALSE);
    _call.setProperty(org.apache.axis.AxisEngine.PROP_DOMULTIREFS, Boolean.FALSE);
    _call.setSOAPVersion(org.apache.axis.soap.SOAPConstants.SOAP11_CONSTANTS);
    _call.setOperationName(new javax.xml.namespace.QName("http://service.databus.brms.sinosoft.com/", "fireRule"));
    setRequestHeaders(_call);
    setAttachments(_call);
    Log.debug(RuleServiceImplServiceSoapBindingStub.class,
            " begin::::_call.invoke" + arg0 + ", " + arg1 + ", " + arg2 + ", " + arg3 + ", " + arg4);
    try {
        java.lang.Object _resp = _call
                .invoke(new java.lang.Object[] { arg0, arg1, arg2, arg3, new java.lang.Boolean(arg4) });**