SAXException в axis.jar Как это исправить? - PullRequest
0 голосов
/ 20 марта 2020

Я разрабатываю связь с указанными c веб-службами.

При взаимодействии с веб-службой возникает следующая ошибка.

17:09:54.220 [http-bio-40443-exec-10] ERROR org.apache.axis.client.Call - Exception:
            org.xml.sax.SAXException: Invalid element in x.tager.ws.PollResponse - PollResult
                at org.apache.axis.encoding.ser.BeanDeserializer.onStartChild(BeanDeserializer.java:258) ~[axis-axis-1.4.jar:?]
                at org.apache.axis.encoding.DeserializationContext.startElement(DeserializationContext.java:1035) ~[axis-axis-1.4.jar:?]
                at org.apache.axis.message.SAX2EventRecorder.replay(SAX2EventRecorder.java:165) ~[axis-axis-1.4.jar:?]
                at org.apache.axis.message.MessageElement.publishToHandler(MessageElement.java:1141) ~[axis-axis-1.4.jar:?]
                at org.apache.axis.message.RPCElement.deserialize(RPCElement.java:236) ~[axis-axis-1.4.jar:?]
                at org.apache.axis.message.RPCElement.getParams(RPCElement.java:384) ~[axis-axis-1.4.jar:?]
                at org.apache.axis.client.Call.invoke(Call.java:2467) [axis-axis-1.4.jar:?]
                at org.apache.axis.client.Call.invoke(Call.java:2366) [axis-axis-1.4.jar:?]
                at org.apache.axis.client.Call.invoke(Call.java:1812) [axis-axis-1.4.jar:?]

Причина проблемы была определена как результат кода ниже.

org.apache.axis.client.Call

        /** Invoke an RPC service with a pre-constructed RPCElement.
         *
         * Note: Not part of JAX-RPC specification.
         *
         * @param body an RPCElement containing all the information about
         *             this call.
         * @return a deserialized Java Object containing the return value
         * @exception AxisFault
         */
        public Object invoke( RPCElement body ) throws AxisFault {

            ...

            if (bodyEl instanceof RPCElement) {
                try {
                    resArgs = ((RPCElement) bodyEl).getParams();   //exception
                } catch (Exception e) {
                    log.error(Messages.getMessage("exception00"), e); //log
                    throw AxisFault.makeFault(e);
                }

В приведенном выше коде bodyEl имеет ответ XML, который я хочу. Другими словами, проблем со связью не было.

"name - parent , Value - SOAPBody" of the elements of "(RPCElement) bodyEl"

    There is an xml response result I want in .

Но (RPCElement) bodyEl. The value of getParams() is [] и возникает ошибка.

Как это исправить?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...