Results 1 to 3 of 3

Thread: incorrect content-type for soap version

  1. #1

    Default incorrect content-type for soap version

    Hello,

    I'm having a problem calling a webservice. I am using spring-ws 1.0.2 and spring 2.5. I am getting a wrong content-type error. If I take the generated soap message and paste it into soapUI its executes correctly. Any help would be appreciated:

    Here is my spring config:


    Code:
    	<bean id="amosConnectOnlineService"
    		class="com.stratosglobal.fleetportal.adapter.impl.AmosConnectOnlineServiceImpl">
    		<property name="webServiceTemplate">
    			<bean class="org.springframework.ws.client.core.WebServiceTemplate"
    				parent="abstractWSTemplate">
    				<property name="defaultUri"
    					value="${amos.connect.online.ws.url}" />
    				<property name="messageFactory">
    					<bean class="org.springframework.ws.soap.saaj.SaajSoapMessageFactory">
    	        			<property name="soapVersion">
    	            			<util:constant static-field="org.springframework.ws.soap.SoapVersion.SOAP_12"/>
    	       				 </property>	       				
    	   				</bean>
    				</property>
    			</bean>
    		</property>		
    	</bean>
    
            <bean id="abstractWSTemplate" abstract="true">
    		<property name="marshaller" ref="xmlBeansMarshaller" />
    		<property name="unmarshaller" ref="xmlBeansMarshaller" />
    	</bean>
    Here is the error:

    Code:
    org.springframework.ws.soap.SoapMessageCreationException: Could not create message from InputStream: Unable to internalize message; nested exception is com.sun.xml.internal.messaging.saaj.SOAPExceptionImpl: Unable to internalize message
    	at org.springframework.ws.soap.saaj.SaajSoapMessageFactory.createWebServiceMessage(SaajSoapMessageFactory.java:180)
    	at org.springframework.ws.transport.AbstractWebServiceConnection.receive(AbstractWebServiceConnection.java:53)
    	at org.springframework.ws.client.core.WebServiceTemplate.sendAndReceive(WebServiceTemplate.java:409)
    	at org.springframework.ws.client.core.WebServiceTemplate.marshalSendAndReceive(WebServiceTemplate.java:264)
    	at org.springframework.ws.client.core.WebServiceTemplate.marshalSendAndReceive(WebServiceTemplate.java:252)
    	at com.stratosglobal.fleetportal.adapter.impl.AmosConnectOnlineServiceImpl.loadRemoteMailQueue(AmosConnectOnlineServiceImpl.java:44)
    	at com.stratosglobal.fleetportal.adapter.impl.AmosConnectOnlineServiceImpl.loadRemoteMessageSummaryForRemoteId(AmosConnectOnlineServiceImpl.java:95)
    	at com.stratosglobal.fleetportal.service.impl.InstalledBaseServiceImpl.loadRemoteMessageSummariesForVessel(InstalledBaseServiceImpl.java:537)
    	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    	at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    	at java.lang.reflect.Method.invoke(Unknown Source)
    	at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:301)
    	at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:182)
    	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:149)
    	at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:106)
    	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
    	at org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:89)
    	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
    	at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
    	at $Proxy66.loadRemoteMessageSummariesForVessel(Unknown Source)
    	at com.stratosglobal.fleetportal.web.comp.VesselACRemotesMessageSummaryController.handleRequestInternal(VesselACRemotesMessageSummaryController.java:39)
    	at org.springframework.web.servlet.mvc.AbstractController.handleRequest(AbstractController.java:153)
    	at org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter.handle(SimpleControllerHandlerAdapter.java:48)
    	at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:874)
    	at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:808)
    	at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:476)
    	at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:441)
    	at javax.servlet.http.HttpServlet.service(HttpServlet.java:710)
    	at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
    	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
    	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
    	at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:265)
    	at org.acegisecurity.intercept.web.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:107)
    	at org.acegisecurity.intercept.web.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:72)
    	at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
    	at org.acegisecurity.ui.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:166)
    	at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
    	at org.acegisecurity.ui.AbstractProcessingFilter.doFilter(AbstractProcessingFilter.java:271)
    	at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
    	at org.acegisecurity.context.HttpSessionContextIntegrationFilter.doFilter(HttpSessionContextIntegrationFilter.java:249)
    	at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
    	at org.acegisecurity.securechannel.ChannelProcessingFilter.doFilter(ChannelProcessingFilter.java:138)
    	at org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
    	at org.acegisecurity.util.FilterChainProxy.doFilter(FilterChainProxy.java:149)
    	at org.acegisecurity.util.FilterToBeanProxy.doFilter(FilterToBeanProxy.java:98)
    	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
    	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
    	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
    	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
    	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
    	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
    	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
    	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263)
    	at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
    	at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584)
    	at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
    	at java.lang.Thread.run(Unknown Source)
    Caused by: com.sun.xml.internal.messaging.saaj.SOAPExceptionImpl: Unable to internalize message
    	at com.sun.xml.internal.messaging.saaj.soap.MessageImpl.init(Unknown Source)
    	at com.sun.xml.internal.messaging.saaj.soap.MessageImpl.<init>(Unknown Source)
    	at com.sun.xml.internal.messaging.saaj.soap.ver1_2.Message1_2Impl.<init>(Unknown Source)
    	at com.sun.xml.internal.messaging.saaj.soap.ver1_2.SOAPMessageFactory1_2Impl.createMessage(Unknown Source)
    	at org.springframework.ws.soap.saaj.SaajSoapMessageFactory.createWebServiceMessage(SaajSoapMessageFactory.java:163)
    	... 57 more
    Caused by: com.sun.xml.internal.messaging.saaj.soap.SOAPVersionMismatchException: Cannot create message: incorrect content-type for SOAP version. Got: text/xml; charset=utf-8 Expected: application/soap+xml
    	... 62 more

  2. #2

    Default

    Can you test your client with the latest version of Spring-WS (1.5) and see if the problem still happens?
    Tareq Abedrabbo

    My Twitter
    My Blog

  3. #3

    Default My lack of understanding of SOAP

    Tareq,

    Thanks for the reply but the problem was simply my lack of familiarity with SOAP. A client had given us a test web service to use for development and it supported SOAP 1.2. When we went to production, the production service only supported SOAP 1.1. This is what caused the problem. I simply had to use SOAP 1.1 and include soap action headers in the requests.
    Last edited by darrell.pittman; Jun 9th, 2008 at 07:24 AM.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •