[ 
https://issues.apache.org/activemq/browse/SM-481?page=comments#action_36524 ] 

Philip Dodds commented on SM-481:
---------------------------------

Added new test to org.apache.servicemix.http.HttpProviderTest.java which has a 
640k message on an InOut with a provider.  The test passed.

Can you confirm you are running against the subversion HEAD?

> servicemix-http provider truncates a large xml response
> -------------------------------------------------------
>
>          Key: SM-481
>          URL: https://issues.apache.org/activemq/browse/SM-481
>      Project: ServiceMix
>         Type: Bug

>   Components: servicemix-http
>  Environment: windows xp professional.  Java 1.5 
>     Reporter: Pete 
>     Priority: Critical
>      Fix For: incubation
>  Attachments: soap_response.txt
>
>
> When using servicemix-http as a provider, our provider web service returns a 
> very large xml response, this gets truncated somewhere in servicemix (I did 
> notice when debugging it went down the stax xml route) 
>  
> We had the same problem when using SaajBinding, we fixed this locally by 
> extending the SaajBinding and overridng the
> onMessageExchange
> in particular just after the call() we added  response.saveChanges();  e.g.
>         SOAPMessage response = connection.call(inMessage, soapEndpoint);
>         response.saveChanges();  
>  
> This I believe was a known issue using this particular SAAJ implementation, 
> which is why saveChanges() was added to the api.
> see 
> http://www.nabble.com/servicemix-http-provider-truncates-a-large-xml-response-tf1857975.html
>  for forum post 
> Our response xml is 673148 bytes. I have attached an example of the failing 
> soap response. Note: you'll need to remove header stuff and save as xml.  The 
> response has a single xml element, where embedded (as a string) is another 
> xml document - nasty I know. 
> XML Config is
> <!-- Http based client recieve/send html request/response passes message to a 
> router component-->
>                 <sm:activationSpec componentName="httpReceiver" 
> service="my:httpBinding" endpoint="httpReceiver"
>                         destinationService="my:router">
>                         <sm:component>
>                                 <bean 
> xmlns="http://xbean.org/schemas/spring/1.0"; 
> class="org.apache.servicemix.components.http.HttpConnector">
>                                         <property name="host" 
> value="localhost" />
>                                         <property name="port" value="8912" />
>                                         <property name="marshaler">
>             <bean class="org.apache.servicemix.components.http.HttpMarshaler" 
> />
>                                         </property>
>                                 </bean>
>                         </sm:component>
>                 </sm:activationSpec>
> Then there is an eip router that routes to
>  <sm:component>
>                                     <http:component>
>                                       <http:endpoints>
>                                         <http:endpoint service="my:search"
>                                                        endpoint="search"
>                                                        role="provider"
>                                                        soap="true"
>                                                        
> soapAction="http://www.blah.com/blah";
>                                                        
> locationURI="http://www.blah.com:80/blah.asmx"/>
>                                       </http:endpoints>
>                                     </http:component>
>                                   </sm:component>

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   https://issues.apache.org/activemq/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira

Reply via email to