Client error reading xmlstreamreader

I have the following Android app code below. I'm trying to connect to a web service via HTTP. The web service uses apache axis. However I'm running into the error "Error reading XMLStreamReader" in...

Sample code using K-SOAP for Android.

private void sendSOAPmsg(DamageAssessmentFormPojo pojo) throws IOException, XmlPullParserException, SoapFault {
        SoapObject request = new SoapObject(WEBSERVICE.NAMESPACE, WEBSERVICE.METHOD_NAME_SUBMIT_REPORT);
        request.addProperty("xmlBytes", Util.getSoapBase64String(pojo));
        request.addProperty("fileName", IO.DefaultReportName);
        request.addProperty("deviceId", AppConstants.IMEI != null ? AppConstants.IMEI : Util.getIMEI(this));

        SoapPrimitive response = sendSOAPEnvelope(request, WEBSERVICE.SOAP_ACTION_SUBMIT_REPORT);

        if (response.toString().equalsIgnoreCase("true")) {
            Logger.logInfo("REPORT SENT SUCCESSFULLY", "WEB-SERVICE");
            pojo.setReportSent(true);
            IO.writeObject(pojo.getReportsFolderPath() + IO.DefaultReportName, pojo);
        } else {
            Logger.logInfo("REPORT SENT FAILED", "WEB-SERVICE - RESONSE " + response.toString());
        }
    }

    private SoapPrimitive sendSOAPEnvelope(SoapObject request, String soapAction) throws IOException, XmlPullParserException, SoapFault {
        SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(SoapEnvelope.VER11);
        envelope.dotNet = true;
        envelope.setOutputSoapObject(request);
        HttpTransportSE androidHttpTransport = new HttpTransportSE(WEBSERVICE.URL);

        androidHttpTransport.call(soapAction, envelope);
        SoapPrimitive response = (SoapPrimitive) envelope.getResponse();

        return response;

    }

    private boolean sendSOAPimage(String strImg, File pFile) throws IOException, XmlPullParserException {
        boolean result = false;

        if (strImg != null) {
            SoapObject request = new SoapObject(WEBSERVICE.NAMESPACE, WEBSERVICE.METHOD_NAME_SUBMIT_IMAGE);
            request.addProperty("imageBytes", strImg);
            request.addProperty("fileName", pFile.getName());
            request.addProperty("deviceId", AppConstants.IMEI != null ? AppConstants.IMEI : Util.getIMEI(this));

            SoapPrimitive response = sendSOAPEnvelope(request, WEBSERVICE.SOAP_ACTION_SUBMIT_MAGE);

            if (response.toString().equalsIgnoreCase("true")) {

                result = true;

                Logger.logInfo("IMAGE SENT SUCCESSFULLY", "WEB-SERVICE");

            } else {
                Logger.logInfo("IMAGE SENT FAILED", "WEB-SERVICE - RESONSE " + response.toString());
            }

        }

        return result;
    }

//———Util Helper Method

public static String getSoapBase64String(DamageAssessmentFormPojo pojo) {


        XmlSerializer xmlSerializer = Xml.newSerializer();
        StringWriter writer = new StringWriter();

        try {
            xmlSerializer.setOutput(writer);
            xmlSerializer.startDocument("UTF-8", true);

            xmlSerializer.startTag("", XMLTags.TAG_ROD);
            xmlSerializer.startTag("", XMLTags.TAG_ORDER);

            xmlSerializer.startTag("", XMLTags.TAG_SEVERITY);
            xmlSerializer.text(pojo.getCheckedSeverity_Complexity());
            xmlSerializer.endTag("", XMLTags.TAG_SEVERITY);

            xmlSerializer.startTag("", XMLTags.TAG_DAMAGE_TYPE);
            StringBuilder builder = new StringBuilder();
            for (String str : pojo.getCheckedDamageTypes()) {

                builder.append(str + " , ");

            }
            xmlSerializer.text(builder.toString());
            xmlSerializer.endTag("", XMLTags.TAG_DAMAGE_TYPE);

            xmlSerializer.startTag("", XMLTags.TAG_ENV_IMPACT);
            xmlSerializer.text(pojo.getCheckedEnvImpact());
            xmlSerializer.endTag("", XMLTags.TAG_ENV_IMPACT);

            xmlSerializer.startTag("", XMLTags.TAG_ENV_COMMENT);
            xmlSerializer.text(pojo.getEnvImpactComments());
            xmlSerializer.endTag("", XMLTags.TAG_ENV_COMMENT);

            xmlSerializer.startTag("", XMLTags.TAG_TRAVEL_CONDITION);
            xmlSerializer.text(pojo.getCheckedTravelCond());
            xmlSerializer.endTag("", XMLTags.TAG_TRAVEL_CONDITION);

            xmlSerializer.startTag("", XMLTags.TAG_TRAVEL_COMMENT);
            xmlSerializer.text(pojo.getTravCondComments());
            xmlSerializer.endTag("", XMLTags.TAG_TRAVEL_COMMENT);

            xmlSerializer.startTag("", XMLTags.TAG_ORDER_DATE);
            xmlSerializer.text(pojo.getDateTime());
            xmlSerializer.endTag("", XMLTags.TAG_ORDER_DATE);

            xmlSerializer.endTag("", "Order");
            xmlSerializer.endTag("", "ROD");

            xmlSerializer.endDocument();

        } catch (IllegalArgumentException e) {
            Logger.logException(e);
        } catch (IllegalStateException e) {
            Logger.logException(e);
        } catch (IOException e) {
            Logger.logException(e);
        }

        return Base64.encode(writer.toString().getBytes());
    }


posted 9 years ago

  • Mark post as helpful


  • send pies

    Number of slices to send:

    Optional ‘thank-you’ note:



  • Quote
  • Report post to moderator

We have a spring-cxf ( Spring 3.0.4, CXF 2.5.10, Java 6) web service application deployed in WAS 8.0.0.7 @ Linux machine. We are able to access all services through soap ui by directly using ip on url (through Linux IP in which application installed). Now the app server is behind the Web server (iplanet, & configured by client) and now the issue comes(we are using https to hit the web server where as web server to app server is http).

We are able to see xml content in browser using the url provided by client but when we access the web service through SOAPUI we are getting «Error reading XMLStreamReader.» and following exception in WAS log

—————————————

[1/14/14 5:14:34:375 GMT] 00000040 AccDetailsInt I org.apache.cxf.services.AccountDetailsWSService.AccountDetailsWSPort.AccDetailsInt Inbound Message

—————————-

ID: 13

Address: https://{ip:port}/infox/services/AccountDetailsWSPort

Encoding: UTF-8

Http-Method: POST

Content-Type: text/xml;charset=UTF-8

Headers: {$WSCS=[SSL_RSA_WITH_RC4_128_MD5-128], $WSIS=[true], $WSPR=[HTTP/1.1], $WSRA=[10.203.118.218], $WSRH=[10.203.118.218], $WSSC=[https], $WSSI=[Q1IrQ29oeGJCMFNHRWFPNzdBYjBRSU1RNEVZd3RWSHhlVWJyRGtnaDBEWT0=], $WSSN=[ip], $WSSP=[2006], _WS_HAPRT_WLMVERSION=[-1], accept-encoding=[gzip,deflate], conten-lengtth=[1594], content-type=[text/xml;charset=UTF-8], Host=[{ip:port}], SOAPAction=[«urn:GetAccountProfile»], Surrogate-Capability=[WS-ESI=»ESI/1.0+»], User-Agent=[Apache-HttpClient/4.1.1 (java 1.5)]}

—————————————

[1/14/14 5:14:34:376 GMT] 00000040 SystemOut O Request XML :

[1/14/14 5:14:34:376 GMT] 00000040 PhaseIntercep W org.apache.cxf.phase.PhaseInterceptorChain doDefaultLogging Interceptor for {http://wsbroker.core.infx.com/}AccountDetailsWSService has thrown exception, unwinding now

org.apache.cxf.binding.soap.SoapFault: Error reading XMLStreamReader.

at org.apache.cxf.binding.soap.saaj.SAAJInInterceptor$SAAJPreInInterceptor.handleMessage(SAAJInInterceptor.java:139)

at org.apache.cxf.binding.soap.saaj.SAAJInInterceptor$SAAJPreInInterceptor.handleMessage(SAAJInInterceptor.java:102)

at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:263)

at org.apache.cxf.transport.ChainInitiationObserver.onMessage(ChainInitiationObserver.java:122)

at org.apache.cxf.transport.http.AbstractHTTPDestination.invoke(AbstractHTTPDestination.java:233)

at org.apache.cxf.transport.servlet.ServletController.invokeDestination(ServletController.java:214)

at org.apache.cxf.transport.servlet.ServletController.invoke(ServletController.java:194)

at org.apache.cxf.transport.servlet.CXFNonSpringServlet.invoke(CXFNonSpringServlet.java:129)

at org.apache.cxf.transport.servlet.AbstractHTTPServlet.handleRequest(AbstractHTTPServlet.java:223)

at org.apache.cxf.transport.servlet.AbstractHTTPServlet.doPost(AbstractHTTPServlet.java:143)

at javax.servlet.http.HttpServlet.service(HttpServlet.java:595)

at org.apache.cxf.transport.servlet.AbstractHTTPServlet.service(AbstractHTTPServlet.java:199)

at com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:1230)

at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:779)

at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:478)

at com.ibm.ws.webcontainer.servlet.ServletWrapperImpl.handleRequest(ServletWrapperImpl.java:178)

at com.ibm.ws.webcontainer.filter.WebAppFilterManager.invokeFilters(WebAppFilterManager.java:1071)

at com.ibm.ws.webcontainer.servlet.CacheServletWrapper.handleRequest(CacheServletWrapper.java:87)

at com.ibm.ws.webcontainer.WebContainer.handleRequest(WebContainer.java:909)

at com.ibm.ws.webcontainer.WSWebContainer.handleRequest(WSWebContainer.java:1662)

at com.ibm.ws.webcontainer.channel.WCChannelLink.ready(WCChannelLink.java:200)

at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleDiscrimination(HttpInboundLink.java:453)

at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleNewRequest(HttpInboundLink.java:515)

at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.processRequest(HttpInboundLink.java:306)

at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.ready(HttpInboundLink.java:277)

at com.ibm.ws.tcp.channel.impl.NewConnectionInitialReadCallback.sendToDiscriminators(NewConnectionInitialReadCallback.java:214)

at com.ibm.ws.tcp.channel.impl.NewConnectionInitialReadCallback.complete(NewConnectionInitialReadCallback.java:113)

at com.ibm.ws.tcp.channel.impl.AioReadCompletionListener.futureCompleted(AioReadCompletionListener.java:175)

at com.ibm.io.async.AbstractAsyncFuture.invokeCallback(AbstractAsyncFuture.java:217)

at com.ibm.io.async.AsyncChannelFuture$1.run(AsyncChannelFuture.java:205)

at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1700)

Caused by: com.ctc.wstx.exc.WstxEOFException: Unexpected EOF in prolog

at [row,col {unknown-source}]: [1,0]

at com.ctc.wstx.sr.StreamScanner.throwUnexpectedEOF(StreamScanner.java:677)

at com.ctc.wstx.sr.BasicStreamReader.handleEOF(BasicStreamReader.java:2139)

at com.ctc.wstx.sr.BasicStreamReader.nextFromProlog(BasicStreamReader.java:2045)

at com.ctc.wstx.sr.BasicStreamReader.next(BasicStreamReader.java:1134)

at com.ctc.wstx.sr.BasicStreamReader.nextTag(BasicStreamReader.java:1157)

at org.apache.cxf.binding.soap.saaj.SAAJInInterceptor$SAAJPreInInterceptor.handleMessage(SAAJInInterceptor.java:125)

… 30 more

[1/14/14 5:14:34:412 GMT] 00000040 SystemOut O ****************************In DB LOGGIN INTERCEPTOR…DBLogOutIntercepter:Adding Logs ************************************

[1/14/14 5:14:34:417 GMT] 00000040 SystemOut O ****************************In DB LOGGIN INTERCEPTOR…DBLogOutIntercepter:Logt Added ************************************

[1/14/14 5:14:34:417 GMT] 00000040 AccDetailsInt I org.apache.cxf.services.AccountDetailsWSService.AccountDetailsWSPort.AccDetailsInt Outbound Message

—————————

ID: 13

Response-Code: 500

Encoding: UTF-8

Content-Type: text/xml

Headers: {}

Payload: <soap:Envelope xmlns:soap=»http://schemas.xmlsoap.org/soap/envelope/»><soap:Body><soap:Fault><faultcode>soap:Client</faultcode><faultstring>Error reading XMLStreamReader.</faultstring></soap:Fault></soap:Body></soap:Envelope>

——————————-

Am i missing any configurations? any help would be appreciated

thanks & regards, Harilal.A.S.

Содержание

  1. Ошибка ответа конверта SOAP: ошибка чтения XMLStreamReader
  2. 3 ответы
  3. Ошибка ответа конверта SOAP: ошибка чтения XMLStreamReader
  4. Getting Error reading XMLStreamReader: Unexpected character ‘»‘ when mocking soap endpoint #202
  5. Comments
  6. Footer
  7. Исключение при отправке большого запроса на мыло
  8. 3 ответы
  9. SOAP Envelope Response Error: Error reading XMLStreamReader
  10. 3 ответа
  11. Похожие вопросы:

Ошибка ответа конверта SOAP: ошибка чтения XMLStreamReader

У меня есть следующий код приложения для Android ниже. Я пытаюсь подключиться к веб-службе через HTTP. Веб-сервис использует ось apache. Однако я сталкиваюсь с ошибкой «Ошибка чтения XMLStreamReader» в ответе. Я действительно застрял и не уверен, что я могу сделать. Может быть, на стороне сервера и клиента используются разные версии HTTP-клиента и SOAP? Любая помощь по этому вопросу будет принята с благодарностью. Веб-сервис очень прост: метод sayHello отображает аргумент, указанный в arg0=some_string.

задан 24 сен ’12, 16:09

3 ответы

Ваш запрос WebService построен неправильно. Фактически вы создаете запрос формы, а не фактический запрос SOAP.

запрос SOAP представляет собой XML-документ, который имеет конверт и тело, см. пример здесь Пример сообщения SOAP в Википедии.

То, что вы на самом деле делаете здесь, — это стандартный вызов HTTP, который эмулирует форму отправки, а не вызов SOAP.

Здесь у вас есть два решения:

1- Вы можете либо эмулировать поведение клиента SOAP, вручную создавая XML-документ и отправляя его. Помимо установки правильного XML-документа в качестве тела запроса, не забудьте установить правильные заголовки: SOAPAction, Content-Type и Content-Length

Также не забудьте изменить пространство имен (m) выше на правильное пространство имен, которое использует ваш веб-сервис. и название операции (GetStockPrice ) с операцией, которую вы пытаетесь вызвать. Также не забывайте имена и типы параметров.

2- Вы можете использовать Apache Axis для создания клиента и использовать этот клиент с вашим приложением.

См. эту тему для получения дополнительной информации и рекомендуемого клиента Как вызвать веб-службу SOAP на Android

Источник

Ошибка ответа конверта SOAP: ошибка чтения XMLStreamReader

У меня есть следующий код приложения для Android ниже. Я пытаюсь подключиться к веб-службе через HTTP. Веб-сервис использует ось apache. Однако я сталкиваюсь с ошибкой «Ошибка чтения XMLStreamReader» в ответе. Я действительно застрял и не уверен, что я могу сделать. Может быть, на стороне сервера и клиента используются разные версии HTTP-клиента и SOAP? Любая помощь по этому вопросу будет принята с благодарностью. Веб-сервис очень прост: метод sayHello отображает аргумент, указанный в arg0=some_string.

Ваш запрос WebService построен неправильно. Фактически вы создаете запрос формы, а не фактический запрос SOAP.

запрос SOAP представляет собой XML-документ, который имеет конверт и тело, см. пример здесь Пример сообщения SOAP в Википедии .

То, что вы на самом деле делаете здесь, — это стандартный вызов HTTP, который эмулирует форму отправки, а не вызов SOAP.

Здесь у вас есть два решения:

1- Вы можете либо эмулировать поведение клиента SOAP, вручную создавая XML-документ и отправляя его. Помимо установки правильного XML-документа в качестве тела запроса, не забудьте установить правильные заголовки: SOAPAction, Content-Type и Content-Length .

Также не забудьте изменить пространство имен (m) выше на правильное пространство имен, которое использует ваш веб-сервис. и имя операции ( GetStockPrice ) с операцией, которую вы пытаетесь вызвать. Также не забывайте имена и типы параметров.

2- Вы можете использовать Apache Axis для создания клиента и использовать этот клиент с вашим приложением.

См. эту ветку для получения дополнительной информации и рекомендуемого клиента. Как вызвать веб-службу SOAP на Android.

Источник

Getting Error reading XMLStreamReader: Unexpected character ‘»‘ when mocking soap endpoint #202

Getting Error reading XMLStreamReader: Unexpected character ‘»‘ when mocking soap response.

Below is the sample of how i mocked a soap endpoint

But I’m getting the below error,
Error reading XMLStreamReader: Unexpected character ‘»‘ (code 34) in prolog; expected ‘

The text was updated successfully, but these errors were encountered:

we can fix this by changing the below code in RestEndPointMocker.java

String jsonBodyRequest = mockStep.getResponse().get(«body»).toString();

JsonNode jsonNodeResponse = mockStep.getResponse(); JsonNode jsonNodeBody = jsonNodeResponse.get(«body»); String jsonBodyRequest = (jsonNodeBody != null)?jsonNodeBody.toString():jsonNodeResponse.get(«xmlBody»).asText();

Kindly help to review & fix this.

@arunvelusamyd , sounds great, Thanks!
Just let’s get this validated via a PR.
@santhoshTpixler , @BeTheCodeWithYou and all folks please(when you get chance, please review).

@arunvelusamyd , sorry mate for the delay.
We are on it today.

  • Changes in PR looks good.
  • Just we need to add couple of unit tests to make sure it’s not breaking any existing mocking.

Once done, we will try to release by tonight. 👍

No problem dude and it’s not a big delay. 😊 Thanks for the update.

Available in the below version and higher versions.

© 2023 GitHub, Inc.

You can’t perform that action at this time.

You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session.

Источник

Исключение при отправке большого запроса на мыло

Существует веб-сервис, развернутый на tomcat 6 и доступный через apache-cxf 2.3.3. Сгенерированные источники заглушки с использованием wsdl2java, чтобы иметь возможность вызывать эту службу.

Все было хорошо, пока я не отправил большой запрос (

1 МБ). Этот запрос не был обработан и завершился ошибкой, за исключением:

Здесь какая-то максимальная длина запроса, я полностью застрял с этим.

задан 15 марта ’11, 11:03

3 ответы

Предложение Владимира работал. Этот код ниже поможет другим понять, куда поместить 1000000.

ответ дан 23 мая ’17, 11:05

Я понял, что было не так. На самом деле это была ошибка внутри кода перехватчика:

Когда я заменил это на

вещи начинают работать нормально.

Таким образом, запрос просто транкализировался во время копирования потоков.

ответ дан 17 мар ’11, в 06:03

Куда вы добавили этот CachedOutputStream requestStream = new CachedOutputStream(1000000); Смотрите, я также сталкиваюсь с той же проблемой — неизвестный

Я сталкиваюсь с той же проблемой получения «com.ctc.wstx.exc.WstxEOFException: неожиданный EOF в прологе» при использовании класса CachedOutputStream.

Глядя на источники класса CachedOutputStream, порог используется для переключения между хранением данных потока из «в памяти» в «файл».
Предполагая, что поток работает с данными, которые превышают пороговое значение, он сохраняется в файле, поэтому следующий код сломается.

Увеличение «порога» действительно помогает, так как все потоковые данные хранятся в памяти, и в таком сценарии вызов cachedInputStream.close() на самом деле не закрывает базовую реализацию потока, поэтому его можно прочитать позже.

Вот «исправленная» версия приведенного выше кода (по крайней мере, она работала без исключения для меня)

Источник

SOAP Envelope Response Error: Error reading XMLStreamReader

У меня есть следующий код Android app ниже. Я пытаюсь подключиться к веб-сервису через HTTP. Веб-сервис использует ось apache. Однако я натыкаюсь на ошибку «Error reading XMLStreamReader» в респонсе. Я действительно застрял и не уверен, что смогу сделать. Может ли быть такое, что на стороне сервера и клиента используются разные версии HTTP client и SOAP?? Любая помощь по этому поводу была бы очень признательна. Веб-сервис очень простой: метод sayHello выводит аргумент приведенный в arg0=some_string

3 ответа

Я работаю над пониманием того, как работают SOAP-сервисы. Мой клиент находится в Java и сервис находится с использованием WCF (хотя по идее это не должно иметь значения). Если мне дадут пример SOAP-конверта и сделают следующее: -Build a SOAP envelope that exactly follows the example -Use an.

Я пытаюсь общаться с SOAP API https://www.flussituristici.servizirl.it/Turismo5/app/ws/checkinV1?wsdl с помощью Savon gem. Пока что я реализовал следующий код: def client client = Savon.client( wsdl: https://www.flussituristici.servizirl.it/Turismo5/app/ws/checkinV1?wsdl, host.

Ваш WebService запрос не конструируется должным образом. Вы на самом деле создаете форму запросом а не фактическим SOAP запросом.

A SOAP запрос это XML Document который имеет конверт и тело см. пример вот Пример SOAP Message на википедии.

То что вы на самом деле делаете здесь это стандартный HTTP вызов который эмулирует submit формы а не SOAP вызов.

У вас тут два решения:

1- Вы можете либо эмулировать поведение SOAP клиента путем ручного создания XML документа и его представления. Кроме того задавая в качестве request body проперти XML документа не забудьте установить проперти заголовки: Сорбэк, Content-Type и Content-Length

Так же не забудьте изменить пространство имен (m) выше с проперти namespace вашего вебсервиса using. и имя операции (GetStockPrice ) с операцией которую вы пытаетесь вызвать. Так же не забудьте имена параметров и типы.

2- Вы можете использовать Apache Axis для генерации клиента и использования того клиента с вашим приложением

Смотрите этот тред для получения дополнительной информации и рекомендуемый клиент Как вызвать SOAP веб-сервис на Android

Шоукри к правильно. Ты делал HTTP POST запрос. Это не мыльный вебсервис. Если хочешь узнать как вызвать вебсервис пройди по ссылке. http://www.youtube.com/watch?v=v9EowBVgwSo . Убедись что ты скачиваешь самый последний ksoap jar файл.

Пример кода с использованием K-SOAP для Android.

//——-Util Helper метод

У меня есть проблема во время декодирования SOAP Envelope. Вот мой XML c 3 .

Руководство по DocuSign SOAP api рекомендует, чтобы ни один PDF файл в пределах конверта не превышал 25 mb в размере, но знает ли кто-нибудь об общем ограничении размера конверта? Наша система обладает потенциалом генерировать довольно много PDF файлов, которые в общей сложности могли бы достигать.

Похожие вопросы:

Я использую JaxWs/JaxB в веб-сервисе, но мне не нравится то, что все мои xml-файлы (будь то те, которые я отправляю или получаю) содержат SOAP конверты. Как можно от них избавиться? Все, что мне.

Я пытаюсь использовать SOAP UI, подключившись к VPN моей организации из дома. Но получаю вот такую ошибку — Error getting response: org.apache.http.conn.HttpHostConnectException: Connection to https.

Есть ли у кого-нибудь примеры того, как выглядит аннотация с Documentation или AppInfo children внутри SOAP Envelope?

Я работаю над пониманием того, как работают SOAP-сервисы. Мой клиент находится в Java и сервис находится с использованием WCF (хотя по идее это не должно иметь значения). Если мне дадут пример.

Я пытаюсь общаться с SOAP API https://www.flussituristici.servizirl.it/Turismo5/app/ws/checkinV1?wsdl с помощью Savon gem. Пока что я реализовал следующий код: def client client = Savon.client(.

У меня есть проблема во время декодирования SOAP Envelope. Вот мой XML

Руководство по DocuSign SOAP api рекомендует, чтобы ни один PDF файл в пределах конверта не превышал 25 mb в размере, но знает ли кто-нибудь об общем ограничении размера конверта? Наша система.

Я делаю soap request/response приложение. Во время построения soap ответа я получаю Server did not recognized value HTTP Header SOAPAction. Что это значит? И как такое решить? Вот код. NSString.

Я потребляю веб-сервис, который помещает токен аутентификации в заголовок конверта SOAP. Появляется (через взгляд на сэмплы, которые пришли с WSDL WS), что если stub генерируется в .NET, то эта.

Использую тот же запрос в JMeter , что и в SoapUI . Он рабочий в SoapUI , но выдает error в JMeter . soap:ClientError reading XMLStreamReader: Unexpected EOF in prolog at [row,col ].

Источник

Здравствуйте всем. С помощью программки SoapUi добился успеха — данные приходят. Теперь пытаюсь это повторить из моей обработки таким кодом:

    type = 1;

    dateFROM = Формат(Период.ДатаНачала,»ДФ=dd.MM.yyyy»);

    dateTO = Формат(Период.ДатаОкончания,»ДФ=dd.MM.yyyy»);

    password = СтрЗаменить(MD5ХешСтрока(password),» «,»»);    

    
    СтрокаЗапроса = «http://ibank.trustbank.uz:225/fbCib/services/operations/action=getPaymentList»;;

    
    WinHttp = Новый COMОбъект(«WinHttp.WinHttpRequest.5.1»);

    WinHttp.Option(2,»utf-8″);

    WinHttp.Open(«POST», СтрокаЗапроса, 0);  

    //WinHttp.SetTimeouts(10000, 10000, 10000, 10000);

    
    //

    Попытка

        WinHttp.Send(«&username=»+username+»&password=»+password+»&type=»+type+»&dateFROM=»+dateFROM+»&dateTO=»+dateTO+»&accDB=»+ОбщегоНазначенияВызовСервера.ЗначениеРеквизитаОбъекта(БанкСчет,»НомерСчета»));

        WinHttp.WaitForResponse();

    исключение

        Сообщить(ОписаниеОшибки());

        Возврат;

    КонецПопытки;

    
    Сообщить(WinHttp.ResponseText());

Выходит ошибка: Error reading XMLStreamReader. Где что не так, указал, подскажите плз! Вперввые с этим столкнулся!

Hi,
I was trying fix for CXF-3383 from 2.3.4-snapshot from within applet & I’m getting exception as:

WARNING: Interceptor for {http:org.apache.cxf.binding.soap.SoapFault: Error reading XMLStreamReader.
	at org.apache.cxf.binding.soap.interceptor.ReadHeadersInterceptor.handleMessage(ReadHeadersInterceptor.java:222)
	at org.apache.cxf.binding.soap.interceptor.ReadHeadersInterceptor.handleMessage(ReadHeadersInterceptor.java:60)
	at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:255)
	at org.apache.cxf.endpoint.ClientImpl.onMessage(ClientImpl.java:759)
	at org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.handleResponseInternal(HTTPConduit.java:2337)
	at org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.handleResponse(HTTPConduit.java:2195)
	at org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.close(HTTPConduit.java:2039)
	at org.apache.cxf.io.CacheAndWriteOutputStream.postClose(CacheAndWriteOutputStream.java:47)
	at org.apache.cxf.io.CachedOutputStream.close(CachedOutputStream.java:188)
	at org.apache.cxf.transport.AbstractConduit.close(AbstractConduit.java:56)
	at org.apache.cxf.transport.http.HTTPConduit.close(HTTPConduit.java:697)
	at org.apache.cxf.interceptor.MessageSenderInterceptor$MessageSenderEndingInterceptor.handleMessage(MessageSenderInterceptor.java:62)
	at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:255)
	at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:520)
	at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:317)
	at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:269)
	at org.apache.cxf.frontend.ClientProxy.invokeSync(ClientProxy.java:73)
	at org.apache.cxf.jaxws.JaxWsClientProxy.invoke(JaxWsClientProxy.java:124)
	at $Proxy42.login(Unknown Source)
	at com.banctec.client.commonviewer.ViewerWSServerHandler.login(ViewerWSServerHandler.java:107)
	at com.banctec.client.viewer.ViewerController.login(ViewerController.java:248)
	at com.banctec.client.viewer.EfpViewer.ensureLoggedIn(EfpViewer.java:561)
	at com.banctec.client.viewer.EfpViewer.startViewer(EfpViewer.java:329)
	at com.banctec.client.viewer.EfpViewer.start(EfpViewer.java:257)
	at sun.applet.AppletPanel.run(AppletPanel.java:464)
	at java.lang.Thread.run(Thread.java:662)
Caused by: javax.xml.stream.XMLStreamException: ParseError at [row,col]:[1,1]
Message: Content is not allowed in prolog.
	at com.sun.org.apache.xerces.internal.impl.XMLStreamReaderImpl.next(XMLStreamReaderImpl.java:594)
	at com.sun.org.apache.xerces.internal.impl.XMLStreamReaderImpl.nextTag(XMLStreamReaderImpl.java:1235)
	at org.apache.cxf.binding.soap.interceptor.ReadHeadersInterceptor.handleMessage(ReadHeadersInterceptor.java:122)
	... 25 more
javax.xml.ws.soap.SOAPFaultException: Error reading XMLStreamReader.
	at org.apache.cxf.jaxws.JaxWsClientProxy.invoke(JaxWsClientProxy.java:146)
	at $Proxy42.login(Unknown Source)
	at com.banctec.client.commonviewer.ViewerWSServerHandler.login(ViewerWSServerHandler.java:107)
	at com.banctec.client.viewer.ViewerController.login(ViewerController.java:248)
	at com.banctec.client.viewer.EfpViewer.ensureLoggedIn(EfpViewer.java:561)
	at com.banctec.client.viewer.EfpViewer.startViewer(EfpViewer.java:329)
	at com.banctec.client.viewer.EfpViewer.start(EfpViewer.java:257)
	at sun.applet.AppletPanel.run(AppletPanel.java:464)
	at java.lang.Thread.run(Thread.java:662)
Caused by: javax.xml.stream.XMLStreamException: ParseError at [row,col]:[1,1]
Message: Content is not allowed in prolog.
	at com.sun.org.apache.xerces.internal.impl.XMLStreamReaderImpl.next(XMLStreamReaderImpl.java:594)
	at com.sun.org.apache.xerces.internal.impl.XMLStreamReaderImpl.nextTag(XMLStreamReaderImpl.java:1235)
	at org.apache.cxf.binding.soap.interceptor.ReadHeadersInterceptor.handleMessage(ReadHeadersInterceptor.java:122)
	at org.apache.cxf.binding.soap.interceptor.ReadHeadersInterceptor.handleMessage(ReadHeadersInterceptor.java:60)
	at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:255)
	at org.apache.cxf.endpoint.ClientImpl.onMessage(ClientImpl.java:759)
	at org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.handleResponseInternal(HTTPConduit.java:2337)
	at org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.handleResponse(HTTPConduit.java:2195)
	at org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.close(HTTPConduit.java:2039)
	at org.apache.cxf.io.CacheAndWriteOutputStream.postClose(CacheAndWriteOutputStream.java:47)
	at org.apache.cxf.io.CachedOutputStream.close(CachedOutputStream.java:188)
	at org.apache.cxf.transport.AbstractConduit.close(AbstractConduit.java:56)
	at org.apache.cxf.transport.http.HTTPConduit.close(HTTPConduit.java:697)
	at org.apache.cxf.interceptor.MessageSenderInterceptor$MessageSenderEndingInterceptor.handleMessage(MessageSenderInterceptor.java:62)
	at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:255)
	at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:520)
	at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:317)
	at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:269)
	at org.apache.cxf.frontend.ClientProxy.invokeSync(ClientProxy.java:73)
	at org.apache.cxf.jaxws.JaxWsClientProxy.invoke(JaxWsClientProxy.java:124)
	... 8 more
javax.xml.ws.soap.SOAPFaultException: Error reading XMLStreamReader.
	at org.apache.cxf.jaxws.JaxWsClientProxy.invoke(JaxWsClientProxy.java:146)
	at $Proxy42.login(Unknown Source)
	at com.banctec.client.commonviewer.ViewerWSServerHandler.login(ViewerWSServerHandler.java:107)
	at com.banctec.client.viewer.ViewerController.login(ViewerController.java:248)
	at com.banctec.client.viewer.EfpViewer.ensureLoggedIn(EfpViewer.java:561)
	at com.banctec.client.viewer.EfpViewer.startViewer(EfpViewer.java:329)
	at com.banctec.client.viewer.EfpViewer.start(EfpViewer.java:257)
	at sun.applet.AppletPanel.run(AppletPanel.java:464)
	at java.lang.Thread.run(Thread.java:662)
Caused by: javax.xml.stream.XMLStreamException: ParseError at [row,col]:[1,1]
Message: Content is not allowed in prolog.
	at com.sun.org.apache.xerces.internal.impl.XMLStreamReaderImpl.next(XMLStreamReaderImpl.java:594)
	at com.sun.org.apache.xerces.internal.impl.XMLStreamReaderImpl.nextTag(XMLStreamReaderImpl.java:1235)
	at org.apache.cxf.binding.soap.interceptor.ReadHeadersInterceptor.handleMessage(ReadHeadersInterceptor.java:122)
	at org.apache.cxf.binding.soap.interceptor.ReadHeadersInterceptor.handleMessage(ReadHeadersInterceptor.java:60)
	at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:255)
	at org.apache.cxf.endpoint.ClientImpl.onMessage(ClientImpl.java:759)
	at org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.handleResponseInternal(HTTPConduit.java:2337)
	at org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.handleResponse(HTTPConduit.java:2195)
	at org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.close(HTTPConduit.java:2039)
	at org.apache.cxf.io.CacheAndWriteOutputStream.postClose(CacheAndWriteOutputStream.java:47)
	at org.apache.cxf.io.CachedOutputStream.close(CachedOutputStream.java:188)
	at org.apache.cxf.transport.AbstractConduit.close(AbstractConduit.java:56)
	at org.apache.cxf.transport.http.HTTPConduit.close(HTTPConduit.java:697)
	at org.apache.cxf.interceptor.MessageSenderInterceptor$MessageSenderEndingInterceptor.handleMessage(MessageSenderInterceptor.java:62)
	at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:255)
	at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:520)
	at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:317)
	at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:269)
	at org.apache.cxf.frontend.ClientProxy.invokeSync(ClientProxy.java:73)
	at org.apache.cxf.jaxws.JaxWsClientProxy.invoke(JaxWsClientProxy.java:124)
	... 8 more

When I looked at messages, I found:

16-Mar-2011 17:22:45 org.apache.cxf.interceptor.AbstractLoggingInterceptor log
INFO: Outbound Message
---------------------------
ID: 1
Address: http:Encoding: UTF-8
Content-Type: multipart/related; type="application/xop+xml"; boundary="uuid:8ed5984d-00d9-42f2-8a93-8cec2c17a184"; start="<root.message@cxf.apache.org>"; start-info="text/xml"
Headers: {Accept=[*/*], SOAPAction=[""]}
Payload: 
--uuid:8ed5984d-00d9-42f2-8a93-8cec2c17a184
Content-Type: application/xop+xml; charset=UTF-8; type="text/xml";
Content-Transfer-Encoding: binary
Content-ID: <root.message@cxf.apache.org>

<soap:Envelope xmlns:soap="http:><soap:Body><ns1:login xmlns:ns1="http://wsapi.api.client.caseware.banctec.com/"><appServerUrl>jnp://localhost:1099</appServerUrl><userName>efpadmin</userName><password>efpadmin</password></ns1:login></soap:Body></soap:Envelope>
--uuid:8ed5984d-00d9-42f2-8a93-8cec2c17a184--
--------------------------------------
16-Mar-2011 17:22:45 org.apache.cxf.interceptor.AbstractLoggingInterceptor log
INFO: Inbound Message
----------------------------
ID: 1
Response-Code: -1
Encoding: ISO-8859-1
Content-Type: unknown/unknown
Headers: {Content-type=[unknown/unknown]}
Payload: ??All??_?w?Dv?s?6?P?????bx?????????O??(yVO??@58_??
--------------------------------------
16-Mar-2011 17:22:45 org.apache.cxf.phase.PhaseInterceptorChain doDefaultLogging

This works from a standalone client, but when I call it from applet, it throws above error. Also, this works for cxf-2.2.6.jar, it’s only when I was trying fix for issue CXF-3383 with 2.3.4-snapshot, I got it. Do you have any idea anything being changed from 2.2.6 that I need to take care in 2.3.4? All, the jars are signed so I can’t imagin applet security blocking it (also the fact that it was working with 2.2.6).

If you’re using any of these tools for Web Services – Axis2, CXF etc. – that internally make use of Woodstox XML processor (wstx), and you’re getting an exception like this during webservice calls,

javax.xml.ws.soap.SOAPFaultException: Error reading XMLStreamReader.
        at org.apache.cxf.jaxws.JaxWsClientProxy.invoke(JaxWsClientProxy.java:...)
        ...
Caused by: com.ctc.wstx.exc.WstxUnexpectedCharException: Unexpected character ...
        at com.ctc.wstx.sr.StreamScanner.throwUnexpectedChar(StreamScanner.java:...)
        at com.ctc.wstx.sr.BasicStreamReader.nextFromProlog(BasicStreamReader.java:...)
        at com.ctc.wstx.sr.BasicStreamReader.next(BasicStreamReader.java:...)
        at com.ctc.wstx.sr.BasicStreamReader.nextTag(BasicStreamReader.java:...)

the problem is that the wstx tokenizer/parser encountered unexpected
(but not necessarily invalid per se) character; character that is not
legal in current context. Could happen, for example, if white space was
missing between attribute value and name of next attribute, according to
API docs (http://woodstox.codehaus.org/3.2.9/javadoc/com/ctc/wstx/exc/WstxUnexpectedCharException.html).

This simply means that you’re receiving an ill-formed SOAP XML as response. You need to check the SOAP response construction logic/code at the other end you’re communicating to.

XML
Attribute (computing)
SOAP
Web Protocols
Web Service
Apache Axis2
Doc (computing)
API
Space (architecture)

#django #xml #soap #django-rest-framework #python-requests

#django #xml #soap #django-rest-framework #python-запросы

Вопрос:

Мои XML-данные:

 xml_payload = 
<?xml version="1.0" encoding="UTF-8"?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
    <soap:Header>
        <Authentication >
            <username>blabla</username>
            <password>123456789</password>
        </Authentication>
    </soap:Header>
        <soap:Body>
            <data>
                <title>Test title</title>
                <content>Test body format</content>
            </data>
        </soap:Body>
</soap:Envelope>
 

Мой запрос в проекте django:

 try:
    url = "http://someurls.com"
    res = requests.post(url=url, data=xml_payload, headers={'Content-type': 'application/xml'})
    return response.content, response.status_code
except Exception as e:
    print(e)
    return None, 500
 

Когда я отправляю запрос с помощью postman, я получаю ответ, приведенный ниже:

 <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
    <soap:Body>
        <soap:Fault>
            <faultcode>soap:Client</faultcode>
            <faultstring>Error reading XMLStreamReader.</faultstring>
        </soap:Fault>
    </soap:Body>
</soap:Envelope>'
 

Он возвращает ошибку. Я просматриваю Интернет, но не нашел ответа, который выполнил бы мой запрос.

Комментарии:

1. Это может быть параметр (params=xml_payload)?

2. @MatteoBianchi Нет

Ответ №1:

Попробуйте передать полезную нагрузку xml следующим образом:

 xml_payload = """<?xml version="1.0" encoding="UTF-8"?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
    <soap:Header>
        <Authentication >
            <username>blabla</username>
            <password>123456789</password>
        </Authentication>
    </soap:Header>
        <soap:Body>
            <data>
                <title>Test title</title>
                <content>Test body format</content>
            </data>
        </soap:Body>
</soap:Envelope>"""
 

Ответ №2:

Спустя несколько дней я наконец нашел ответ. Когда я создаю полезную нагрузку xml с помощью python, python незаметно добавляет » n» в конце каждой строки. Поэтому, когда я заменил эти » n», я отлично работаю.

 xml_payload = xml_payload.replace("n", "")
 

I am trying to invoke soap webservice over https protocal.

I have wsdl and generated classes by using Apache CXF, version : 3.0.5

when i post the request in soapui, i am getting successfull response from server

but when the same is invoked from Java client getting error : javax.xml.ws.soap.SOAPFaultException: Error reading XMLStreamReader: Unexpected EOF in prolog

Below is java code

package com.cts.pepsi.util;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.Map;
import javax.xml.ws.BindingProvider;
import org.apache.cxf.jaxws.JaxWsProxyFactoryBean;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import com.oracle.xmlns.apps.financials.commonmodules.shared.model.erpintegrationservice.DocumentDetails;
import com.oracle.xmlns.apps.financials.commonmodules.shared.model.erpintegrationservice.ErpIntegrationService;
import com.oracle.xmlns.apps.financials.commonmodules.shared.model.erpintegrationservice.ErpIntegrationService_Service;
import com.oracle.xmlns.apps.financials.commonmodules.shared.model.erpintegrationservice.EssJob;
import com.oracle.xmlns.apps.financials.commonmodules.shared.model.erpintegrationservice.ObjectFactory;

public class SoapClient {
    private static final Logger           log      = LoggerFactory.getLogger(SoapClient.class);
    private String username = "username";
    private String password = "password";
    static ErpIntegrationService erpIntegrationService;
    static long value = 0;
    public static void main(String[] args) {
        log.info("START : Invoking  service");
        System.out.println("done");
        try {
            String documentAccount = null;
            String documentTitle = null;
            String fileName = null;
            String interfaceDetails = null;
            String jobName = null;
            String jobParams = null;
            EssJob essJob = new EssJob();
            List<EssJob> jobList = new ArrayList<EssJob>();
            ObjectFactory erpobjfac = new ObjectFactory();
                documentAccount = "abc$/xyz$/take$";
                documentTitle = "ekat throw bill";
                fileName = "abcd.zip";
                interfaceDetails = "2";
                jobName = "/pqr/stu/ddd/fdg/qwe/tyu/poi,lkj";
                jobParams = "090900909090909090909,andis,2016/05/17,,,,,,,,,,,,,,,,,,,,Y,null";
                essJob.setJobName(erpobjfac.createEssJobJobName(jobName));
                essJob.setParameterList(erpobjfac.createEssJobParameterList(jobParams));
                jobList.add(essJob);

            System.out.println("iiiii  ");
            StringBuffer encodedContent = new StringBuffer();
            encodedContent.append("encoded content");//here Base64 encoded data is appended
            //DocumentDetails
            DocumentDetails docDtls = new DocumentDetails();
            docDtls.setDocumentAccount(erpobjfac.createDocumentDetailsDocumentAccount(documentAccount));
            docDtls.setContentType(erpobjfac.createDocumentDetailsContentType("zip"));
            docDtls.setDocumentTitle(erpobjfac.createDocumentDetailsDocumentTitle(documentTitle));
            docDtls.setFileName(fileName);
            docDtls.setDocumentSecurityGroup(erpobjfac.createDocumentDetailsDocumentSecurityGroup("FAFtakeExcellent"));
            docDtls.setContent(encodedContent.toString().getBytes());

            //NotificationCode
            String notificationCode = "50";
            //CallBackURL
            String callbackURL = "http://somecallbackserver.domain.com/mycallback";

            new SoapClient().authenticate();
            JaxWsProxyFactoryBean factory = new JaxWsProxyFactoryBean();
            factory.setServiceClass(ErpIntegrationService.class);
            //factory.setAddress("https://eeln-test.fin.us2.oraclecloud.com:443/publicFinancialCommonErpIntegration/ErpIntegrationService");
            factory.setAddress("http://xmlns.oracle.com/apps/financials/commonModules/shared/model/erpIntegrationService/loadAndImportData");
            factory.getInInterceptors().add(new org.apache.cxf.interceptor.LoggingInInterceptor());
            factory.getOutInterceptors().add(new org.apache.cxf.interceptor.LoggingOutInterceptor());
            //ErpIntegrationService erpIntServiceSoap = (ErpIntegrationService) factory.create();
            erpIntegrationService = (ErpIntegrationService) factory.create();

            value = erpIntegrationService.loadAndImportData(docDtls, jobList, interfaceDetails, notificationCode, callbackURL);
            System.out.println("value is not :- "+value);
        }
        catch (Exception e) {
            log.error("An exception occurred, exiting", e);
        }
    }
    public <K> void authenticate() {
          log.info("Entering authenticate ");
          try {
           ErpIntegrationService_Service erpIntgService_Service = new ErpIntegrationService_Service();
           this.erpIntegrationService = erpIntgService_Service.getErpIntegrationServiceSoapHttpPort();
           Map requestCredentails = ((BindingProvider) this.erpIntegrationService).getRequestContext();
           requestCredentails.put("javax.xml.ws.security.auth.username", this.username);
           requestCredentails.put("javax.xml.ws.security.auth.password", this.password);
           log.info("Exiting authenticate ");
          } catch (Exception exception) {
           log.info("Error in authenticate " + exception.getMessage());
          }
         }
}

below is the log

javax.xml.ws.soap.SOAPFaultException: Error reading XMLStreamReader: Unexpected EOF in prolog
 at [row,col {unknown-source}]: [1,0]
    at org.apache.cxf.jaxws.JaxWsClientProxy.invoke(JaxWsClientProxy.java:160)
    at com.sun.proxy.$Proxy52.loadAndImportData(Unknown Source)
    at com.cts.pepsi.util.SoapClient.main(SoapClient.java:109)
Caused by: com.ctc.wstx.exc.WstxEOFException: Unexpected EOF in prolog
 at [row,col {unknown-source}]: [1,0]
    at com.ctc.wstx.sr.StreamScanner.throwUnexpectedEOF(StreamScanner.java:685)
    at com.ctc.wstx.sr.BasicStreamReader.handleEOF(BasicStreamReader.java:2141)
    at com.ctc.wstx.sr.BasicStreamReader.nextFromProlog(BasicStreamReader.java:2047)
    at com.ctc.wstx.sr.BasicStreamReader.next(BasicStreamReader.java:1131)
    at com.ctc.wstx.sr.BasicStreamReader.nextTag(BasicStreamReader.java:1154)
    at org.apache.cxf.binding.soap.interceptor.ReadHeadersInterceptor.handleMessage(ReadHeadersInterceptor.java:165)
    at org.apache.cxf.binding.soap.interceptor.ReadHeadersInterceptor.handleMessage(ReadHeadersInterceptor.java:66)
    at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:307)
    at org.apache.cxf.endpoint.ClientImpl.onMessage(ClientImpl.java:802)
    at org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.handleResponseInternal(HTTPConduit.java:1645)
    at org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.handleResponse(HTTPConduit.java:1533)
    at org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.close(HTTPConduit.java:1336)
    at org.apache.cxf.io.CacheAndWriteOutputStream.postClose(CacheAndWriteOutputStream.java:56)
    at org.apache.cxf.io.CachedOutputStream.close(CachedOutputStream.java:215)
    at org.apache.cxf.transport.AbstractConduit.close(AbstractConduit.java:56)
    at org.apache.cxf.transport.http.HTTPConduit.close(HTTPConduit.java:652)
    at org.apache.cxf.interceptor.MessageSenderInterceptor$MessageSenderEndingInterceptor.handleMessage(MessageSenderInterceptor.java:62)
    at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:307)
    at org.apache.cxf.endpoint.ClientImpl.doInvoke(ClientImpl.java:516)
    at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:425)
    at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:326)
    at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:279)
    at org.apache.cxf.frontend.ClientProxy.invokeSync(ClientProxy.java:96)
    at org.apache.cxf.jaxws.JaxWsClientProxy.invoke(JaxWsClientProxy.java:138)
    ... 2 more

i have taken the soap request from the logs and posted from SOAP ui, it worked fine.

i have tried to invoke all operations which exists in wsdl from Java client and the same error is repeated

below is wsdl policy

<wsp:Policy xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd" wsu:Id="ErpIntegrationServiceSoapHttpPort_Input_Policy" xmlns:wsp="http://schemas.xmlsoap.org/ws/2004/09/policy">
   <wsp:ExactlyOne>
      <wsp:All>
         <sp:SignedParts xmlns:sp="http://schemas.xmlsoap.org/ws/2005/07/securitypolicy">
            <sp:Body/>
            <sp:Header Namespace="http://www.w3.org/2005/08/addressing"/>
            <sp:Header Namespace="http://schemas.xmlsoap.org/ws/2004/08/addressing"/>
            <sp:Header Name="fmw-context" Namespace="http://xmlns.oracle.com/fmw/context/1.0"/>
         </sp:SignedParts>
         <sp:EncryptedParts xmlns:sp="http://schemas.xmlsoap.org/ws/2005/07/securitypolicy">
            <sp:Body/>
            <sp:Header Name="fmw-context" Namespace="http://xmlns.oracle.com/fmw/context/1.0"/>
         </sp:EncryptedParts>
      </wsp:All>
      <wsp:All>
         <sp:SignedParts xmlns:sp="http://schemas.xmlsoap.org/ws/2005/07/securitypolicy">
            <sp:Body/>
            <sp:Header Namespace="http://www.w3.org/2005/08/addressing"/>
            <sp:Header Namespace="http://schemas.xmlsoap.org/ws/2004/08/addressing"/>
            <sp:Header Name="fmw-context" Namespace="http://xmlns.oracle.com/fmw/context/1.0"/>
         </sp:SignedParts>
         <sp:EncryptedParts xmlns:sp="http://schemas.xmlsoap.org/ws/2005/07/securitypolicy">
            <sp:Body/>
            <sp:Header Name="fmw-context" Namespace="http://xmlns.oracle.com/fmw/context/1.0"/>
         </sp:EncryptedParts>
      </wsp:All>
      <wsp:All>
         <sp:SignedParts xmlns:sp="http://schemas.xmlsoap.org/ws/2005/07/securitypolicy">
            <sp:Body/>
            <sp:Header Namespace="http://www.w3.org/2005/08/addressing"/>
            <sp:Header Namespace="http://schemas.xmlsoap.org/ws/2004/08/addressing"/>
            <sp:Header Name="fmw-context" Namespace="http://xmlns.oracle.com/fmw/context/1.0"/>
         </sp:SignedParts>
         <sp:EncryptedParts xmlns:sp="http://schemas.xmlsoap.org/ws/2005/07/securitypolicy">
            <sp:Body/>
            <sp:Header Name="fmw-context" Namespace="http://xmlns.oracle.com/fmw/context/1.0"/>
         </sp:EncryptedParts>
      </wsp:All>
      <wsp:All>
         <sp:SignedParts xmlns:sp="http://schemas.xmlsoap.org/ws/2005/07/securitypolicy">
            <sp:Body/>
            <sp:Header Namespace="http://www.w3.org/2005/08/addressing"/>
            <sp:Header Namespace="http://schemas.xmlsoap.org/ws/2004/08/addressing"/>
            <sp:Header Name="fmw-context" Namespace="http://xmlns.oracle.com/fmw/context/1.0"/>
         </sp:SignedParts>
         <sp:EncryptedParts xmlns:sp="http://schemas.xmlsoap.org/ws/2005/07/securitypolicy">
            <sp:Body/>
            <sp:Header Name="fmw-context" Namespace="http://xmlns.oracle.com/fmw/context/1.0"/>
         </sp:EncryptedParts>
      </wsp:All>
   </wsp:ExactlyOne>
</wsp:Policy>

requesting you to please help where i have committed the mistake in java code, thanks

Понравилась статья? Поделить с друзьями:
  • Client error not possible ошибка при подключении принтера
  • Client error kramola
  • Client error 4xx
  • Cmd exe грузит процессор windows 7 как исправить
  • Cmd exe application error