You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@cxf.apache.org by "Andre (JIRA)" <ji...@apache.org> on 2009/05/15 21:47:45 UTC
[jira] Created: (CXF-2221) Missing Soap Headers
Missing Soap Headers
--------------------
Key: CXF-2221
URL: https://issues.apache.org/jira/browse/CXF-2221
Project: CXF
Issue Type: Bug
Components: Soap Binding
Affects Versions: 2.2.1, 2.1.5, 2.2, 2.1.4, 2.1.3, 2.1.2
Environment: java -version
java version "1.6.0_12"
Java(TM) SE Runtime Environment (build 1.6.0_12-b04)
Java HotSpot(TM) 64-Bit Server VM (build 11.2-b01, mixed mode)
apache-tomcat 6.0.18
Reporter: Andre
Hello everybody,
I have a bit trouble with the Soap Headers, they are just not generated...
this is my WSDL: https://api.webtrends.com/Services/AnalyticsDataService.asmx?WSDL
I generate the client code with "wsdl2java ... -exsh true ..."
my client code:
######################################################################################
import javax.xml.ws.Holder;
import org.apache.cxf.interceptor.LoggingInInterceptor;
import org.apache.cxf.interceptor.LoggingOutInterceptor;
import org.apache.cxf.jaxws.JaxWsProxyFactoryBean;
import com.webtrends.ws._1.AnalyticsDataService;
import com.webtrends.ws._1.WTCredentialsHeader;
import com.webtrends.ws._1.WTSessionHeader;
public class Main {
/**
* @param args
*/
public static void main(String[] args) {
JaxWsProxyFactoryBean factory = new JaxWsProxyFactoryBean();
factory.getInInterceptors().add(new LoggingInInterceptor());
factory.getOutInterceptors().add(new LoggingOutInterceptor());
factory.setServiceClass(AnalyticsDataService.class);
factory.setAddress("https://api.webtrends.com/Services/AnalyticsDataService.asmx");
AnalyticsDataService ads = (AnalyticsDataService) factory.create();
WTCredentialsHeader credentials = new WTCredentialsHeader();
credentials.setAccountName("foo");
credentials.setUsername("bar");
credentials.setPassword("baz");
Holder<WTCredentialsHeader> credentialsHolder = new Holder<WTCredentialsHeader>(credentials);
Holder<WTSessionHeader> sessionHolder = new Holder<WTSessionHeader>(new WTSessionHeader());
ads.checkAvailability(credentialsHolder, sessionHolder);
}
}
######################################################################################
15.05.2009 08:01:43 org.apache.cxf.interceptor.LoggingOutInterceptor$LoggingCallback onClose
INFO: Outbound Message
---------------------------
Encoding: UTF-8
Headers: {SOAPAction=["http://www.webtrends.com/WS/1.0/CheckAvailability"], Accept=[*]}
Messages:
Payload: <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"><soap:Body><CheckAvailability xmlns="http://www.webtrends.com/WS/1.0"/></soap:Body></soap:Envelope>
--------------------------------------
15.05.2009 08:01:45 org.apache.cxf.interceptor.LoggingInInterceptor logging
INFO: Inbound Message
----------------------------
Encoding: UTF-8
Headers: {content-type=[text/xml; charset=utf-8], X-AspNet-Version=[2.0.50727], Date=[Fri, 15 May 2009 06:01:45 GMT], Content-Length=[590], X-Powered-By=[ASP.NET], Server=[Microsoft-IIS/6.0], Cache-Control=[private]}
Messages:
Message:
Payload: <?xml version="1.0" encoding="utf-8"?><soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"><soap:Body><soap:Fault><faultcode>soap:Client</faultcode><faultstring>Authentication failed.</faultstring><faultactor>http://api.webtrends.com/Services/AnalyticsDataService.asmx</faultactor><detail><Reason xmlns="http://www.webtrends.com/schemas/2006/01">Missing WTCredentialsHeader and WTSessionHeader in SOAP message.</Reason></detail></soap:Fault></soap:Body></soap:Envelope>
--------------------------------------
Exception in thread "main" javax.xml.ws.soap.SOAPFaultException: Authentication failed.
at org.apache.cxf.jaxws.JaxWsClientProxy.invoke(JaxWsClientProxy.java:199)
at $Proxy59.checkAvailability(Unknown Source)
at rbmh.webplayer.actions.Main.main(Main.java:33)
Caused by: org.apache.cxf.binding.soap.SoapFault: Authentication failed.
at org.apache.cxf.binding.soap.interceptor.Soap11FaultInInterceptor.handleMessage(Soap11FaultInInterceptor.java:70)
at org.apache.cxf.binding.soap.interceptor.Soap11FaultInInterceptor.handleMessage(Soap11FaultInInterceptor.java:35)
at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:220)
at org.apache.cxf.interceptor.AbstractFaultChainInitiatorObserver.onMessage(AbstractFaultChainInitiatorObserver.java:96)
at org.apache.cxf.binding.soap.interceptor.CheckFaultInterceptor.handleMessage(CheckFaultInterceptor.java:69)
at org.apache.cxf.binding.soap.interceptor.CheckFaultInterceptor.handleMessage(CheckFaultInterceptor.java:34)
at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:220)
at org.apache.cxf.endpoint.ClientImpl.onMessage(ClientImpl.java:449)
at org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.handleResponse(HTTPConduit.java:2029)
at org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.close(HTTPConduit.java:1865)
at org.apache.cxf.io.CacheAndWriteOutputStream.postClose(CacheAndWriteOutputStream.java:47)
at org.apache.cxf.io.CachedOutputStream.close(CachedOutputStream.java:170)
at org.apache.cxf.transport.AbstractConduit.close(AbstractConduit.java:66)
at org.apache.cxf.transport.http.HTTPConduit.close(HTTPConduit.java:593)
at org.apache.cxf.interceptor.MessageSenderInterceptor$MessageSenderEndingInterceptor.handleMessage(MessageSenderInterceptor.java:62)
at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:220)
at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:296)
at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:242)
at org.apache.cxf.frontend.ClientProxy.invokeSync(ClientProxy.java:73)
at org.apache.cxf.jaxws.JaxWsClientProxy.invoke(JaxWsClientProxy.java:178)
... 2 more
######################################################################################
like u can see. there is no Soap Header in the Outbound Message...
and now the very funny thing, i'm using maven, so it's very simple to switch to another version of CXF
the stuff is working perfectly with the older cxf versions: 2.1, 2.1.1
but if i use the newer versions: 2.1.2, 2.1.3, 2.1.4, 2.1.5, 2.2, 2.2.1, i get the error above
how can that be? what is wrong
thanks in dvance
regards
andre
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Issue Comment Edited: (CXF-2221) Missing Soap Headers
Posted by "Andre Reiter (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/CXF-2221?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12709958#action_12709958 ]
Andre Reiter edited comment on CXF-2221 at 5/16/09 4:29 AM:
------------------------------------------------------------
Hi Daniel,
absolutely correct!
after modifying generated code and set the @WebParam(mode = WebParam.Mode.INOUT...
it works perfectly
thanks a lot! waiting for fix for wsdl2java
BTW: like I wrote above, the versions 2.1 and 2.1.1 do work properly, INOUT mode is generated, but since the version 2.1.2 there is a bug
just FYI, may be it helps find the reason...
was (Author: a.reiter):
Hi Daniel,
absolutely correct!
after modifying generated code and set the @WebParam(mode = WebParam.Mode.INOUT...
it works perfectly
thanks a lot! waiting for fix for wsdl2java
> Missing Soap Headers
> --------------------
>
> Key: CXF-2221
> URL: https://issues.apache.org/jira/browse/CXF-2221
> Project: CXF
> Issue Type: Bug
> Components: Tooling
> Affects Versions: 2.1.2, 2.1.3, 2.1.4, 2.2, 2.1.5, 2.2.1
> Environment: java -version
> java version "1.6.0_12"
> Java(TM) SE Runtime Environment (build 1.6.0_12-b04)
> Java HotSpot(TM) 64-Bit Server VM (build 11.2-b01, mixed mode)
> apache-tomcat 6.0.18
> Reporter: Andre Reiter
> Assignee: Daniel Kulp
> Attachments: cxf_issue2221.tar.gz
>
>
> Hello everybody,
> I have a bit trouble with the Soap Headers, they are just not generated...
> this is my WSDL: https://api.webtrends.com/Services/AnalyticsDataService.asmx?WSDL
> I generate the client code with "wsdl2java ... -exsh true ..."
> my client code:
> ######################################################################################
> import javax.xml.ws.Holder;
> import org.apache.cxf.interceptor.LoggingInInterceptor;
> import org.apache.cxf.interceptor.LoggingOutInterceptor;
> import org.apache.cxf.jaxws.JaxWsProxyFactoryBean;
> import com.webtrends.ws._1.AnalyticsDataService;
> import com.webtrends.ws._1.WTCredentialsHeader;
> import com.webtrends.ws._1.WTSessionHeader;
> public class Main {
> /**
> * @param args
> */
> public static void main(String[] args) {
> JaxWsProxyFactoryBean factory = new JaxWsProxyFactoryBean();
> factory.getInInterceptors().add(new LoggingInInterceptor());
> factory.getOutInterceptors().add(new LoggingOutInterceptor());
> factory.setServiceClass(AnalyticsDataService.class);
> factory.setAddress("https://api.webtrends.com/Services/AnalyticsDataService.asmx");
> AnalyticsDataService ads = (AnalyticsDataService) factory.create();
> WTCredentialsHeader credentials = new WTCredentialsHeader();
> credentials.setAccountName("foo");
> credentials.setUsername("bar");
> credentials.setPassword("baz");
> Holder<WTCredentialsHeader> credentialsHolder = new Holder<WTCredentialsHeader>(credentials);
> Holder<WTSessionHeader> sessionHolder = new Holder<WTSessionHeader>(new WTSessionHeader());
> ads.checkAvailability(credentialsHolder, sessionHolder);
> }
> }
> ######################################################################################
> 15.05.2009 08:01:43 org.apache.cxf.interceptor.LoggingOutInterceptor$LoggingCallback onClose
> INFO: Outbound Message
> ---------------------------
> Encoding: UTF-8
> Headers: {SOAPAction=["http://www.webtrends.com/WS/1.0/CheckAvailability"], Accept=[*]}
> Messages:
> Payload: <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"><soap:Body><CheckAvailability xmlns="http://www.webtrends.com/WS/1.0"/></soap:Body></soap:Envelope>
> --------------------------------------
> 15.05.2009 08:01:45 org.apache.cxf.interceptor.LoggingInInterceptor logging
> INFO: Inbound Message
> ----------------------------
> Encoding: UTF-8
> Headers: {content-type=[text/xml; charset=utf-8], X-AspNet-Version=[2.0.50727], Date=[Fri, 15 May 2009 06:01:45 GMT], Content-Length=[590], X-Powered-By=[ASP.NET], Server=[Microsoft-IIS/6.0], Cache-Control=[private]}
> Messages:
> Message:
> Payload: <?xml version="1.0" encoding="utf-8"?><soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"><soap:Body><soap:Fault><faultcode>soap:Client</faultcode><faultstring>Authentication failed.</faultstring><faultactor>http://api.webtrends.com/Services/AnalyticsDataService.asmx</faultactor><detail><Reason xmlns="http://www.webtrends.com/schemas/2006/01">Missing WTCredentialsHeader and WTSessionHeader in SOAP message.</Reason></detail></soap:Fault></soap:Body></soap:Envelope>
> --------------------------------------
> Exception in thread "main" javax.xml.ws.soap.SOAPFaultException: Authentication failed.
> at org.apache.cxf.jaxws.JaxWsClientProxy.invoke(JaxWsClientProxy.java:199)
> at $Proxy59.checkAvailability(Unknown Source)
> at rbmh.webplayer.actions.Main.main(Main.java:33)
> Caused by: org.apache.cxf.binding.soap.SoapFault: Authentication failed.
> at org.apache.cxf.binding.soap.interceptor.Soap11FaultInInterceptor.handleMessage(Soap11FaultInInterceptor.java:70)
> at org.apache.cxf.binding.soap.interceptor.Soap11FaultInInterceptor.handleMessage(Soap11FaultInInterceptor.java:35)
> at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:220)
> at org.apache.cxf.interceptor.AbstractFaultChainInitiatorObserver.onMessage(AbstractFaultChainInitiatorObserver.java:96)
> at org.apache.cxf.binding.soap.interceptor.CheckFaultInterceptor.handleMessage(CheckFaultInterceptor.java:69)
> at org.apache.cxf.binding.soap.interceptor.CheckFaultInterceptor.handleMessage(CheckFaultInterceptor.java:34)
> at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:220)
> at org.apache.cxf.endpoint.ClientImpl.onMessage(ClientImpl.java:449)
> at org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.handleResponse(HTTPConduit.java:2029)
> at org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.close(HTTPConduit.java:1865)
> at org.apache.cxf.io.CacheAndWriteOutputStream.postClose(CacheAndWriteOutputStream.java:47)
> at org.apache.cxf.io.CachedOutputStream.close(CachedOutputStream.java:170)
> at org.apache.cxf.transport.AbstractConduit.close(AbstractConduit.java:66)
> at org.apache.cxf.transport.http.HTTPConduit.close(HTTPConduit.java:593)
> at org.apache.cxf.interceptor.MessageSenderInterceptor$MessageSenderEndingInterceptor.handleMessage(MessageSenderInterceptor.java:62)
> at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:220)
> at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:296)
> at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:242)
> at org.apache.cxf.frontend.ClientProxy.invokeSync(ClientProxy.java:73)
> at org.apache.cxf.jaxws.JaxWsClientProxy.invoke(JaxWsClientProxy.java:178)
> ... 2 more
> ######################################################################################
> like u can see. there is no Soap Header in the Outbound Message...
> and now the very funny thing, i'm using maven, so it's very simple to switch to another version of CXF
> the stuff is working perfectly with the older cxf versions: 2.1, 2.1.1
> but if i use the newer versions: 2.1.2, 2.1.3, 2.1.4, 2.1.5, 2.2, 2.2.1, i get the error above
> how can that be? what is wrong
> thanks in dvance
> regards
> andre
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Updated: (CXF-2221) Missing Soap Headers
Posted by "Daniel Kulp (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/CXF-2221?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Daniel Kulp updated CXF-2221:
-----------------------------
Component/s: (was: Soap Binding)
Tooling
This is actually a wsdl2java tooling issue. The method sig has the headers marked as "OUT" and not "INOUT".
If you modify the generated code to change them to INOUT, the headers do appear in the outgoing soap message. I'm digging into the code generator now, but thought I'd post that information.
> Missing Soap Headers
> --------------------
>
> Key: CXF-2221
> URL: https://issues.apache.org/jira/browse/CXF-2221
> Project: CXF
> Issue Type: Bug
> Components: Tooling
> Affects Versions: 2.1.2, 2.1.3, 2.1.4, 2.2, 2.1.5, 2.2.1
> Environment: java -version
> java version "1.6.0_12"
> Java(TM) SE Runtime Environment (build 1.6.0_12-b04)
> Java HotSpot(TM) 64-Bit Server VM (build 11.2-b01, mixed mode)
> apache-tomcat 6.0.18
> Reporter: Andre
> Attachments: cxf_issue2221.tar.gz
>
>
> Hello everybody,
> I have a bit trouble with the Soap Headers, they are just not generated...
> this is my WSDL: https://api.webtrends.com/Services/AnalyticsDataService.asmx?WSDL
> I generate the client code with "wsdl2java ... -exsh true ..."
> my client code:
> ######################################################################################
> import javax.xml.ws.Holder;
> import org.apache.cxf.interceptor.LoggingInInterceptor;
> import org.apache.cxf.interceptor.LoggingOutInterceptor;
> import org.apache.cxf.jaxws.JaxWsProxyFactoryBean;
> import com.webtrends.ws._1.AnalyticsDataService;
> import com.webtrends.ws._1.WTCredentialsHeader;
> import com.webtrends.ws._1.WTSessionHeader;
> public class Main {
> /**
> * @param args
> */
> public static void main(String[] args) {
> JaxWsProxyFactoryBean factory = new JaxWsProxyFactoryBean();
> factory.getInInterceptors().add(new LoggingInInterceptor());
> factory.getOutInterceptors().add(new LoggingOutInterceptor());
> factory.setServiceClass(AnalyticsDataService.class);
> factory.setAddress("https://api.webtrends.com/Services/AnalyticsDataService.asmx");
> AnalyticsDataService ads = (AnalyticsDataService) factory.create();
> WTCredentialsHeader credentials = new WTCredentialsHeader();
> credentials.setAccountName("foo");
> credentials.setUsername("bar");
> credentials.setPassword("baz");
> Holder<WTCredentialsHeader> credentialsHolder = new Holder<WTCredentialsHeader>(credentials);
> Holder<WTSessionHeader> sessionHolder = new Holder<WTSessionHeader>(new WTSessionHeader());
> ads.checkAvailability(credentialsHolder, sessionHolder);
> }
> }
> ######################################################################################
> 15.05.2009 08:01:43 org.apache.cxf.interceptor.LoggingOutInterceptor$LoggingCallback onClose
> INFO: Outbound Message
> ---------------------------
> Encoding: UTF-8
> Headers: {SOAPAction=["http://www.webtrends.com/WS/1.0/CheckAvailability"], Accept=[*]}
> Messages:
> Payload: <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"><soap:Body><CheckAvailability xmlns="http://www.webtrends.com/WS/1.0"/></soap:Body></soap:Envelope>
> --------------------------------------
> 15.05.2009 08:01:45 org.apache.cxf.interceptor.LoggingInInterceptor logging
> INFO: Inbound Message
> ----------------------------
> Encoding: UTF-8
> Headers: {content-type=[text/xml; charset=utf-8], X-AspNet-Version=[2.0.50727], Date=[Fri, 15 May 2009 06:01:45 GMT], Content-Length=[590], X-Powered-By=[ASP.NET], Server=[Microsoft-IIS/6.0], Cache-Control=[private]}
> Messages:
> Message:
> Payload: <?xml version="1.0" encoding="utf-8"?><soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"><soap:Body><soap:Fault><faultcode>soap:Client</faultcode><faultstring>Authentication failed.</faultstring><faultactor>http://api.webtrends.com/Services/AnalyticsDataService.asmx</faultactor><detail><Reason xmlns="http://www.webtrends.com/schemas/2006/01">Missing WTCredentialsHeader and WTSessionHeader in SOAP message.</Reason></detail></soap:Fault></soap:Body></soap:Envelope>
> --------------------------------------
> Exception in thread "main" javax.xml.ws.soap.SOAPFaultException: Authentication failed.
> at org.apache.cxf.jaxws.JaxWsClientProxy.invoke(JaxWsClientProxy.java:199)
> at $Proxy59.checkAvailability(Unknown Source)
> at rbmh.webplayer.actions.Main.main(Main.java:33)
> Caused by: org.apache.cxf.binding.soap.SoapFault: Authentication failed.
> at org.apache.cxf.binding.soap.interceptor.Soap11FaultInInterceptor.handleMessage(Soap11FaultInInterceptor.java:70)
> at org.apache.cxf.binding.soap.interceptor.Soap11FaultInInterceptor.handleMessage(Soap11FaultInInterceptor.java:35)
> at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:220)
> at org.apache.cxf.interceptor.AbstractFaultChainInitiatorObserver.onMessage(AbstractFaultChainInitiatorObserver.java:96)
> at org.apache.cxf.binding.soap.interceptor.CheckFaultInterceptor.handleMessage(CheckFaultInterceptor.java:69)
> at org.apache.cxf.binding.soap.interceptor.CheckFaultInterceptor.handleMessage(CheckFaultInterceptor.java:34)
> at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:220)
> at org.apache.cxf.endpoint.ClientImpl.onMessage(ClientImpl.java:449)
> at org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.handleResponse(HTTPConduit.java:2029)
> at org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.close(HTTPConduit.java:1865)
> at org.apache.cxf.io.CacheAndWriteOutputStream.postClose(CacheAndWriteOutputStream.java:47)
> at org.apache.cxf.io.CachedOutputStream.close(CachedOutputStream.java:170)
> at org.apache.cxf.transport.AbstractConduit.close(AbstractConduit.java:66)
> at org.apache.cxf.transport.http.HTTPConduit.close(HTTPConduit.java:593)
> at org.apache.cxf.interceptor.MessageSenderInterceptor$MessageSenderEndingInterceptor.handleMessage(MessageSenderInterceptor.java:62)
> at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:220)
> at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:296)
> at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:242)
> at org.apache.cxf.frontend.ClientProxy.invokeSync(ClientProxy.java:73)
> at org.apache.cxf.jaxws.JaxWsClientProxy.invoke(JaxWsClientProxy.java:178)
> ... 2 more
> ######################################################################################
> like u can see. there is no Soap Header in the Outbound Message...
> and now the very funny thing, i'm using maven, so it's very simple to switch to another version of CXF
> the stuff is working perfectly with the older cxf versions: 2.1, 2.1.1
> but if i use the newer versions: 2.1.2, 2.1.3, 2.1.4, 2.1.5, 2.2, 2.2.1, i get the error above
> how can that be? what is wrong
> thanks in dvance
> regards
> andre
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Issue Comment Edited: (CXF-2221) Missing Soap Headers
Posted by "Andre Reiter (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/CXF-2221?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12709958#action_12709958 ]
Andre Reiter edited comment on CXF-2221 at 5/16/09 4:47 AM:
------------------------------------------------------------
Hi Daniel,
absolutely correct!
after modifying generated code and set the @WebParam(mode = WebParam.Mode.INOUT...
it works perfectly
thanks a lot! waiting for fix for wsdl2java
BTW: like I wrote above, the versions 2.1 and 2.1.1 do work properly, INOUT mode is generated, but since the version 2.1.2 there is a bug
just FYI, may be it helps to find the reason...
was (Author: a.reiter):
Hi Daniel,
absolutely correct!
after modifying generated code and set the @WebParam(mode = WebParam.Mode.INOUT...
it works perfectly
thanks a lot! waiting for fix for wsdl2java
BTW: like I wrote above, the versions 2.1 and 2.1.1 do work properly, INOUT mode is generated, but since the version 2.1.2 there is a bug
just FYI, may be it helps find the reason...
> Missing Soap Headers
> --------------------
>
> Key: CXF-2221
> URL: https://issues.apache.org/jira/browse/CXF-2221
> Project: CXF
> Issue Type: Bug
> Components: Tooling
> Affects Versions: 2.1.2, 2.1.3, 2.1.4, 2.2, 2.1.5, 2.2.1
> Environment: java -version
> java version "1.6.0_12"
> Java(TM) SE Runtime Environment (build 1.6.0_12-b04)
> Java HotSpot(TM) 64-Bit Server VM (build 11.2-b01, mixed mode)
> apache-tomcat 6.0.18
> Reporter: Andre Reiter
> Assignee: Daniel Kulp
> Attachments: cxf_issue2221.tar.gz
>
>
> Hello everybody,
> I have a bit trouble with the Soap Headers, they are just not generated...
> this is my WSDL: https://api.webtrends.com/Services/AnalyticsDataService.asmx?WSDL
> I generate the client code with "wsdl2java ... -exsh true ..."
> my client code:
> ######################################################################################
> import javax.xml.ws.Holder;
> import org.apache.cxf.interceptor.LoggingInInterceptor;
> import org.apache.cxf.interceptor.LoggingOutInterceptor;
> import org.apache.cxf.jaxws.JaxWsProxyFactoryBean;
> import com.webtrends.ws._1.AnalyticsDataService;
> import com.webtrends.ws._1.WTCredentialsHeader;
> import com.webtrends.ws._1.WTSessionHeader;
> public class Main {
> /**
> * @param args
> */
> public static void main(String[] args) {
> JaxWsProxyFactoryBean factory = new JaxWsProxyFactoryBean();
> factory.getInInterceptors().add(new LoggingInInterceptor());
> factory.getOutInterceptors().add(new LoggingOutInterceptor());
> factory.setServiceClass(AnalyticsDataService.class);
> factory.setAddress("https://api.webtrends.com/Services/AnalyticsDataService.asmx");
> AnalyticsDataService ads = (AnalyticsDataService) factory.create();
> WTCredentialsHeader credentials = new WTCredentialsHeader();
> credentials.setAccountName("foo");
> credentials.setUsername("bar");
> credentials.setPassword("baz");
> Holder<WTCredentialsHeader> credentialsHolder = new Holder<WTCredentialsHeader>(credentials);
> Holder<WTSessionHeader> sessionHolder = new Holder<WTSessionHeader>(new WTSessionHeader());
> ads.checkAvailability(credentialsHolder, sessionHolder);
> }
> }
> ######################################################################################
> 15.05.2009 08:01:43 org.apache.cxf.interceptor.LoggingOutInterceptor$LoggingCallback onClose
> INFO: Outbound Message
> ---------------------------
> Encoding: UTF-8
> Headers: {SOAPAction=["http://www.webtrends.com/WS/1.0/CheckAvailability"], Accept=[*]}
> Messages:
> Payload: <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"><soap:Body><CheckAvailability xmlns="http://www.webtrends.com/WS/1.0"/></soap:Body></soap:Envelope>
> --------------------------------------
> 15.05.2009 08:01:45 org.apache.cxf.interceptor.LoggingInInterceptor logging
> INFO: Inbound Message
> ----------------------------
> Encoding: UTF-8
> Headers: {content-type=[text/xml; charset=utf-8], X-AspNet-Version=[2.0.50727], Date=[Fri, 15 May 2009 06:01:45 GMT], Content-Length=[590], X-Powered-By=[ASP.NET], Server=[Microsoft-IIS/6.0], Cache-Control=[private]}
> Messages:
> Message:
> Payload: <?xml version="1.0" encoding="utf-8"?><soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"><soap:Body><soap:Fault><faultcode>soap:Client</faultcode><faultstring>Authentication failed.</faultstring><faultactor>http://api.webtrends.com/Services/AnalyticsDataService.asmx</faultactor><detail><Reason xmlns="http://www.webtrends.com/schemas/2006/01">Missing WTCredentialsHeader and WTSessionHeader in SOAP message.</Reason></detail></soap:Fault></soap:Body></soap:Envelope>
> --------------------------------------
> Exception in thread "main" javax.xml.ws.soap.SOAPFaultException: Authentication failed.
> at org.apache.cxf.jaxws.JaxWsClientProxy.invoke(JaxWsClientProxy.java:199)
> at $Proxy59.checkAvailability(Unknown Source)
> at rbmh.webplayer.actions.Main.main(Main.java:33)
> Caused by: org.apache.cxf.binding.soap.SoapFault: Authentication failed.
> at org.apache.cxf.binding.soap.interceptor.Soap11FaultInInterceptor.handleMessage(Soap11FaultInInterceptor.java:70)
> at org.apache.cxf.binding.soap.interceptor.Soap11FaultInInterceptor.handleMessage(Soap11FaultInInterceptor.java:35)
> at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:220)
> at org.apache.cxf.interceptor.AbstractFaultChainInitiatorObserver.onMessage(AbstractFaultChainInitiatorObserver.java:96)
> at org.apache.cxf.binding.soap.interceptor.CheckFaultInterceptor.handleMessage(CheckFaultInterceptor.java:69)
> at org.apache.cxf.binding.soap.interceptor.CheckFaultInterceptor.handleMessage(CheckFaultInterceptor.java:34)
> at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:220)
> at org.apache.cxf.endpoint.ClientImpl.onMessage(ClientImpl.java:449)
> at org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.handleResponse(HTTPConduit.java:2029)
> at org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.close(HTTPConduit.java:1865)
> at org.apache.cxf.io.CacheAndWriteOutputStream.postClose(CacheAndWriteOutputStream.java:47)
> at org.apache.cxf.io.CachedOutputStream.close(CachedOutputStream.java:170)
> at org.apache.cxf.transport.AbstractConduit.close(AbstractConduit.java:66)
> at org.apache.cxf.transport.http.HTTPConduit.close(HTTPConduit.java:593)
> at org.apache.cxf.interceptor.MessageSenderInterceptor$MessageSenderEndingInterceptor.handleMessage(MessageSenderInterceptor.java:62)
> at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:220)
> at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:296)
> at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:242)
> at org.apache.cxf.frontend.ClientProxy.invokeSync(ClientProxy.java:73)
> at org.apache.cxf.jaxws.JaxWsClientProxy.invoke(JaxWsClientProxy.java:178)
> ... 2 more
> ######################################################################################
> like u can see. there is no Soap Header in the Outbound Message...
> and now the very funny thing, i'm using maven, so it's very simple to switch to another version of CXF
> the stuff is working perfectly with the older cxf versions: 2.1, 2.1.1
> but if i use the newer versions: 2.1.2, 2.1.3, 2.1.4, 2.1.5, 2.2, 2.2.1, i get the error above
> how can that be? what is wrong
> thanks in dvance
> regards
> andre
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Updated: (CXF-2221) Missing Soap Headers
Posted by "Andre (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/CXF-2221?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Andre updated CXF-2221:
-----------------------
Attachment: cxf_issue2221.tar.gz
Here is the client code Main class and created client side stubs with "wsdl2java ... -exsh true ..."
> Missing Soap Headers
> --------------------
>
> Key: CXF-2221
> URL: https://issues.apache.org/jira/browse/CXF-2221
> Project: CXF
> Issue Type: Bug
> Components: Soap Binding
> Affects Versions: 2.1.2, 2.1.3, 2.1.4, 2.2, 2.1.5, 2.2.1
> Environment: java -version
> java version "1.6.0_12"
> Java(TM) SE Runtime Environment (build 1.6.0_12-b04)
> Java HotSpot(TM) 64-Bit Server VM (build 11.2-b01, mixed mode)
> apache-tomcat 6.0.18
> Reporter: Andre
> Attachments: cxf_issue2221.tar.gz
>
>
> Hello everybody,
> I have a bit trouble with the Soap Headers, they are just not generated...
> this is my WSDL: https://api.webtrends.com/Services/AnalyticsDataService.asmx?WSDL
> I generate the client code with "wsdl2java ... -exsh true ..."
> my client code:
> ######################################################################################
> import javax.xml.ws.Holder;
> import org.apache.cxf.interceptor.LoggingInInterceptor;
> import org.apache.cxf.interceptor.LoggingOutInterceptor;
> import org.apache.cxf.jaxws.JaxWsProxyFactoryBean;
> import com.webtrends.ws._1.AnalyticsDataService;
> import com.webtrends.ws._1.WTCredentialsHeader;
> import com.webtrends.ws._1.WTSessionHeader;
> public class Main {
> /**
> * @param args
> */
> public static void main(String[] args) {
> JaxWsProxyFactoryBean factory = new JaxWsProxyFactoryBean();
> factory.getInInterceptors().add(new LoggingInInterceptor());
> factory.getOutInterceptors().add(new LoggingOutInterceptor());
> factory.setServiceClass(AnalyticsDataService.class);
> factory.setAddress("https://api.webtrends.com/Services/AnalyticsDataService.asmx");
> AnalyticsDataService ads = (AnalyticsDataService) factory.create();
> WTCredentialsHeader credentials = new WTCredentialsHeader();
> credentials.setAccountName("foo");
> credentials.setUsername("bar");
> credentials.setPassword("baz");
> Holder<WTCredentialsHeader> credentialsHolder = new Holder<WTCredentialsHeader>(credentials);
> Holder<WTSessionHeader> sessionHolder = new Holder<WTSessionHeader>(new WTSessionHeader());
> ads.checkAvailability(credentialsHolder, sessionHolder);
> }
> }
> ######################################################################################
> 15.05.2009 08:01:43 org.apache.cxf.interceptor.LoggingOutInterceptor$LoggingCallback onClose
> INFO: Outbound Message
> ---------------------------
> Encoding: UTF-8
> Headers: {SOAPAction=["http://www.webtrends.com/WS/1.0/CheckAvailability"], Accept=[*]}
> Messages:
> Payload: <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"><soap:Body><CheckAvailability xmlns="http://www.webtrends.com/WS/1.0"/></soap:Body></soap:Envelope>
> --------------------------------------
> 15.05.2009 08:01:45 org.apache.cxf.interceptor.LoggingInInterceptor logging
> INFO: Inbound Message
> ----------------------------
> Encoding: UTF-8
> Headers: {content-type=[text/xml; charset=utf-8], X-AspNet-Version=[2.0.50727], Date=[Fri, 15 May 2009 06:01:45 GMT], Content-Length=[590], X-Powered-By=[ASP.NET], Server=[Microsoft-IIS/6.0], Cache-Control=[private]}
> Messages:
> Message:
> Payload: <?xml version="1.0" encoding="utf-8"?><soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"><soap:Body><soap:Fault><faultcode>soap:Client</faultcode><faultstring>Authentication failed.</faultstring><faultactor>http://api.webtrends.com/Services/AnalyticsDataService.asmx</faultactor><detail><Reason xmlns="http://www.webtrends.com/schemas/2006/01">Missing WTCredentialsHeader and WTSessionHeader in SOAP message.</Reason></detail></soap:Fault></soap:Body></soap:Envelope>
> --------------------------------------
> Exception in thread "main" javax.xml.ws.soap.SOAPFaultException: Authentication failed.
> at org.apache.cxf.jaxws.JaxWsClientProxy.invoke(JaxWsClientProxy.java:199)
> at $Proxy59.checkAvailability(Unknown Source)
> at rbmh.webplayer.actions.Main.main(Main.java:33)
> Caused by: org.apache.cxf.binding.soap.SoapFault: Authentication failed.
> at org.apache.cxf.binding.soap.interceptor.Soap11FaultInInterceptor.handleMessage(Soap11FaultInInterceptor.java:70)
> at org.apache.cxf.binding.soap.interceptor.Soap11FaultInInterceptor.handleMessage(Soap11FaultInInterceptor.java:35)
> at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:220)
> at org.apache.cxf.interceptor.AbstractFaultChainInitiatorObserver.onMessage(AbstractFaultChainInitiatorObserver.java:96)
> at org.apache.cxf.binding.soap.interceptor.CheckFaultInterceptor.handleMessage(CheckFaultInterceptor.java:69)
> at org.apache.cxf.binding.soap.interceptor.CheckFaultInterceptor.handleMessage(CheckFaultInterceptor.java:34)
> at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:220)
> at org.apache.cxf.endpoint.ClientImpl.onMessage(ClientImpl.java:449)
> at org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.handleResponse(HTTPConduit.java:2029)
> at org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.close(HTTPConduit.java:1865)
> at org.apache.cxf.io.CacheAndWriteOutputStream.postClose(CacheAndWriteOutputStream.java:47)
> at org.apache.cxf.io.CachedOutputStream.close(CachedOutputStream.java:170)
> at org.apache.cxf.transport.AbstractConduit.close(AbstractConduit.java:66)
> at org.apache.cxf.transport.http.HTTPConduit.close(HTTPConduit.java:593)
> at org.apache.cxf.interceptor.MessageSenderInterceptor$MessageSenderEndingInterceptor.handleMessage(MessageSenderInterceptor.java:62)
> at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:220)
> at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:296)
> at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:242)
> at org.apache.cxf.frontend.ClientProxy.invokeSync(ClientProxy.java:73)
> at org.apache.cxf.jaxws.JaxWsClientProxy.invoke(JaxWsClientProxy.java:178)
> ... 2 more
> ######################################################################################
> like u can see. there is no Soap Header in the Outbound Message...
> and now the very funny thing, i'm using maven, so it's very simple to switch to another version of CXF
> the stuff is working perfectly with the older cxf versions: 2.1, 2.1.1
> but if i use the newer versions: 2.1.2, 2.1.3, 2.1.4, 2.1.5, 2.2, 2.2.1, i get the error above
> how can that be? what is wrong
> thanks in dvance
> regards
> andre
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Resolved: (CXF-2221) Missing Soap Headers
Posted by "Daniel Kulp (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/CXF-2221?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Daniel Kulp resolved CXF-2221.
------------------------------
Resolution: Fixed
Fix Version/s: 2.2.2
2.1.6
> Missing Soap Headers
> --------------------
>
> Key: CXF-2221
> URL: https://issues.apache.org/jira/browse/CXF-2221
> Project: CXF
> Issue Type: Bug
> Components: Tooling
> Affects Versions: 2.1.2, 2.1.3, 2.1.4, 2.2, 2.1.5, 2.2.1
> Environment: java -version
> java version "1.6.0_12"
> Java(TM) SE Runtime Environment (build 1.6.0_12-b04)
> Java HotSpot(TM) 64-Bit Server VM (build 11.2-b01, mixed mode)
> apache-tomcat 6.0.18
> Reporter: Andre Reiter
> Assignee: Daniel Kulp
> Fix For: 2.1.6, 2.2.2
>
> Attachments: cxf_issue2221.tar.gz
>
>
> Hello everybody,
> I have a bit trouble with the Soap Headers, they are just not generated...
> this is my WSDL: https://api.webtrends.com/Services/AnalyticsDataService.asmx?WSDL
> I generate the client code with "wsdl2java ... -exsh true ..."
> my client code:
> ######################################################################################
> import javax.xml.ws.Holder;
> import org.apache.cxf.interceptor.LoggingInInterceptor;
> import org.apache.cxf.interceptor.LoggingOutInterceptor;
> import org.apache.cxf.jaxws.JaxWsProxyFactoryBean;
> import com.webtrends.ws._1.AnalyticsDataService;
> import com.webtrends.ws._1.WTCredentialsHeader;
> import com.webtrends.ws._1.WTSessionHeader;
> public class Main {
> /**
> * @param args
> */
> public static void main(String[] args) {
> JaxWsProxyFactoryBean factory = new JaxWsProxyFactoryBean();
> factory.getInInterceptors().add(new LoggingInInterceptor());
> factory.getOutInterceptors().add(new LoggingOutInterceptor());
> factory.setServiceClass(AnalyticsDataService.class);
> factory.setAddress("https://api.webtrends.com/Services/AnalyticsDataService.asmx");
> AnalyticsDataService ads = (AnalyticsDataService) factory.create();
> WTCredentialsHeader credentials = new WTCredentialsHeader();
> credentials.setAccountName("foo");
> credentials.setUsername("bar");
> credentials.setPassword("baz");
> Holder<WTCredentialsHeader> credentialsHolder = new Holder<WTCredentialsHeader>(credentials);
> Holder<WTSessionHeader> sessionHolder = new Holder<WTSessionHeader>(new WTSessionHeader());
> ads.checkAvailability(credentialsHolder, sessionHolder);
> }
> }
> ######################################################################################
> 15.05.2009 08:01:43 org.apache.cxf.interceptor.LoggingOutInterceptor$LoggingCallback onClose
> INFO: Outbound Message
> ---------------------------
> Encoding: UTF-8
> Headers: {SOAPAction=["http://www.webtrends.com/WS/1.0/CheckAvailability"], Accept=[*]}
> Messages:
> Payload: <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"><soap:Body><CheckAvailability xmlns="http://www.webtrends.com/WS/1.0"/></soap:Body></soap:Envelope>
> --------------------------------------
> 15.05.2009 08:01:45 org.apache.cxf.interceptor.LoggingInInterceptor logging
> INFO: Inbound Message
> ----------------------------
> Encoding: UTF-8
> Headers: {content-type=[text/xml; charset=utf-8], X-AspNet-Version=[2.0.50727], Date=[Fri, 15 May 2009 06:01:45 GMT], Content-Length=[590], X-Powered-By=[ASP.NET], Server=[Microsoft-IIS/6.0], Cache-Control=[private]}
> Messages:
> Message:
> Payload: <?xml version="1.0" encoding="utf-8"?><soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"><soap:Body><soap:Fault><faultcode>soap:Client</faultcode><faultstring>Authentication failed.</faultstring><faultactor>http://api.webtrends.com/Services/AnalyticsDataService.asmx</faultactor><detail><Reason xmlns="http://www.webtrends.com/schemas/2006/01">Missing WTCredentialsHeader and WTSessionHeader in SOAP message.</Reason></detail></soap:Fault></soap:Body></soap:Envelope>
> --------------------------------------
> Exception in thread "main" javax.xml.ws.soap.SOAPFaultException: Authentication failed.
> at org.apache.cxf.jaxws.JaxWsClientProxy.invoke(JaxWsClientProxy.java:199)
> at $Proxy59.checkAvailability(Unknown Source)
> at rbmh.webplayer.actions.Main.main(Main.java:33)
> Caused by: org.apache.cxf.binding.soap.SoapFault: Authentication failed.
> at org.apache.cxf.binding.soap.interceptor.Soap11FaultInInterceptor.handleMessage(Soap11FaultInInterceptor.java:70)
> at org.apache.cxf.binding.soap.interceptor.Soap11FaultInInterceptor.handleMessage(Soap11FaultInInterceptor.java:35)
> at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:220)
> at org.apache.cxf.interceptor.AbstractFaultChainInitiatorObserver.onMessage(AbstractFaultChainInitiatorObserver.java:96)
> at org.apache.cxf.binding.soap.interceptor.CheckFaultInterceptor.handleMessage(CheckFaultInterceptor.java:69)
> at org.apache.cxf.binding.soap.interceptor.CheckFaultInterceptor.handleMessage(CheckFaultInterceptor.java:34)
> at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:220)
> at org.apache.cxf.endpoint.ClientImpl.onMessage(ClientImpl.java:449)
> at org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.handleResponse(HTTPConduit.java:2029)
> at org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.close(HTTPConduit.java:1865)
> at org.apache.cxf.io.CacheAndWriteOutputStream.postClose(CacheAndWriteOutputStream.java:47)
> at org.apache.cxf.io.CachedOutputStream.close(CachedOutputStream.java:170)
> at org.apache.cxf.transport.AbstractConduit.close(AbstractConduit.java:66)
> at org.apache.cxf.transport.http.HTTPConduit.close(HTTPConduit.java:593)
> at org.apache.cxf.interceptor.MessageSenderInterceptor$MessageSenderEndingInterceptor.handleMessage(MessageSenderInterceptor.java:62)
> at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:220)
> at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:296)
> at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:242)
> at org.apache.cxf.frontend.ClientProxy.invokeSync(ClientProxy.java:73)
> at org.apache.cxf.jaxws.JaxWsClientProxy.invoke(JaxWsClientProxy.java:178)
> ... 2 more
> ######################################################################################
> like u can see. there is no Soap Header in the Outbound Message...
> and now the very funny thing, i'm using maven, so it's very simple to switch to another version of CXF
> the stuff is working perfectly with the older cxf versions: 2.1, 2.1.1
> but if i use the newer versions: 2.1.2, 2.1.3, 2.1.4, 2.1.5, 2.2, 2.2.1, i get the error above
> how can that be? what is wrong
> thanks in dvance
> regards
> andre
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Issue Comment Edited: (CXF-2221) Missing Soap Headers
Posted by "Andre (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/CXF-2221?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12709958#action_12709958 ]
Andre edited comment on CXF-2221 at 5/15/09 1:37 PM:
-----------------------------------------------------
Hi Daniel,
absolutely correct!
after modifying generated code and set the @WebParam(mode = WebParam.Mode.INOUT...
it works perfectly
thanks a lot! waiting for fix for wsdl2java
was (Author: a.reiter):
Hi Daniel,
absolutely correct!
after modifying generated code and set the @WebParam(mode = WebParam.Mode.INOUT...
it works perfectly
thanks a lot! waiting for fix of the wsdl2java
> Missing Soap Headers
> --------------------
>
> Key: CXF-2221
> URL: https://issues.apache.org/jira/browse/CXF-2221
> Project: CXF
> Issue Type: Bug
> Components: Tooling
> Affects Versions: 2.1.2, 2.1.3, 2.1.4, 2.2, 2.1.5, 2.2.1
> Environment: java -version
> java version "1.6.0_12"
> Java(TM) SE Runtime Environment (build 1.6.0_12-b04)
> Java HotSpot(TM) 64-Bit Server VM (build 11.2-b01, mixed mode)
> apache-tomcat 6.0.18
> Reporter: Andre
> Attachments: cxf_issue2221.tar.gz
>
>
> Hello everybody,
> I have a bit trouble with the Soap Headers, they are just not generated...
> this is my WSDL: https://api.webtrends.com/Services/AnalyticsDataService.asmx?WSDL
> I generate the client code with "wsdl2java ... -exsh true ..."
> my client code:
> ######################################################################################
> import javax.xml.ws.Holder;
> import org.apache.cxf.interceptor.LoggingInInterceptor;
> import org.apache.cxf.interceptor.LoggingOutInterceptor;
> import org.apache.cxf.jaxws.JaxWsProxyFactoryBean;
> import com.webtrends.ws._1.AnalyticsDataService;
> import com.webtrends.ws._1.WTCredentialsHeader;
> import com.webtrends.ws._1.WTSessionHeader;
> public class Main {
> /**
> * @param args
> */
> public static void main(String[] args) {
> JaxWsProxyFactoryBean factory = new JaxWsProxyFactoryBean();
> factory.getInInterceptors().add(new LoggingInInterceptor());
> factory.getOutInterceptors().add(new LoggingOutInterceptor());
> factory.setServiceClass(AnalyticsDataService.class);
> factory.setAddress("https://api.webtrends.com/Services/AnalyticsDataService.asmx");
> AnalyticsDataService ads = (AnalyticsDataService) factory.create();
> WTCredentialsHeader credentials = new WTCredentialsHeader();
> credentials.setAccountName("foo");
> credentials.setUsername("bar");
> credentials.setPassword("baz");
> Holder<WTCredentialsHeader> credentialsHolder = new Holder<WTCredentialsHeader>(credentials);
> Holder<WTSessionHeader> sessionHolder = new Holder<WTSessionHeader>(new WTSessionHeader());
> ads.checkAvailability(credentialsHolder, sessionHolder);
> }
> }
> ######################################################################################
> 15.05.2009 08:01:43 org.apache.cxf.interceptor.LoggingOutInterceptor$LoggingCallback onClose
> INFO: Outbound Message
> ---------------------------
> Encoding: UTF-8
> Headers: {SOAPAction=["http://www.webtrends.com/WS/1.0/CheckAvailability"], Accept=[*]}
> Messages:
> Payload: <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"><soap:Body><CheckAvailability xmlns="http://www.webtrends.com/WS/1.0"/></soap:Body></soap:Envelope>
> --------------------------------------
> 15.05.2009 08:01:45 org.apache.cxf.interceptor.LoggingInInterceptor logging
> INFO: Inbound Message
> ----------------------------
> Encoding: UTF-8
> Headers: {content-type=[text/xml; charset=utf-8], X-AspNet-Version=[2.0.50727], Date=[Fri, 15 May 2009 06:01:45 GMT], Content-Length=[590], X-Powered-By=[ASP.NET], Server=[Microsoft-IIS/6.0], Cache-Control=[private]}
> Messages:
> Message:
> Payload: <?xml version="1.0" encoding="utf-8"?><soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"><soap:Body><soap:Fault><faultcode>soap:Client</faultcode><faultstring>Authentication failed.</faultstring><faultactor>http://api.webtrends.com/Services/AnalyticsDataService.asmx</faultactor><detail><Reason xmlns="http://www.webtrends.com/schemas/2006/01">Missing WTCredentialsHeader and WTSessionHeader in SOAP message.</Reason></detail></soap:Fault></soap:Body></soap:Envelope>
> --------------------------------------
> Exception in thread "main" javax.xml.ws.soap.SOAPFaultException: Authentication failed.
> at org.apache.cxf.jaxws.JaxWsClientProxy.invoke(JaxWsClientProxy.java:199)
> at $Proxy59.checkAvailability(Unknown Source)
> at rbmh.webplayer.actions.Main.main(Main.java:33)
> Caused by: org.apache.cxf.binding.soap.SoapFault: Authentication failed.
> at org.apache.cxf.binding.soap.interceptor.Soap11FaultInInterceptor.handleMessage(Soap11FaultInInterceptor.java:70)
> at org.apache.cxf.binding.soap.interceptor.Soap11FaultInInterceptor.handleMessage(Soap11FaultInInterceptor.java:35)
> at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:220)
> at org.apache.cxf.interceptor.AbstractFaultChainInitiatorObserver.onMessage(AbstractFaultChainInitiatorObserver.java:96)
> at org.apache.cxf.binding.soap.interceptor.CheckFaultInterceptor.handleMessage(CheckFaultInterceptor.java:69)
> at org.apache.cxf.binding.soap.interceptor.CheckFaultInterceptor.handleMessage(CheckFaultInterceptor.java:34)
> at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:220)
> at org.apache.cxf.endpoint.ClientImpl.onMessage(ClientImpl.java:449)
> at org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.handleResponse(HTTPConduit.java:2029)
> at org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.close(HTTPConduit.java:1865)
> at org.apache.cxf.io.CacheAndWriteOutputStream.postClose(CacheAndWriteOutputStream.java:47)
> at org.apache.cxf.io.CachedOutputStream.close(CachedOutputStream.java:170)
> at org.apache.cxf.transport.AbstractConduit.close(AbstractConduit.java:66)
> at org.apache.cxf.transport.http.HTTPConduit.close(HTTPConduit.java:593)
> at org.apache.cxf.interceptor.MessageSenderInterceptor$MessageSenderEndingInterceptor.handleMessage(MessageSenderInterceptor.java:62)
> at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:220)
> at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:296)
> at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:242)
> at org.apache.cxf.frontend.ClientProxy.invokeSync(ClientProxy.java:73)
> at org.apache.cxf.jaxws.JaxWsClientProxy.invoke(JaxWsClientProxy.java:178)
> ... 2 more
> ######################################################################################
> like u can see. there is no Soap Header in the Outbound Message...
> and now the very funny thing, i'm using maven, so it's very simple to switch to another version of CXF
> the stuff is working perfectly with the older cxf versions: 2.1, 2.1.1
> but if i use the newer versions: 2.1.2, 2.1.3, 2.1.4, 2.1.5, 2.2, 2.2.1, i get the error above
> how can that be? what is wrong
> thanks in dvance
> regards
> andre
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Commented: (CXF-2221) Missing Soap Headers
Posted by "Andre (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/CXF-2221?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12709958#action_12709958 ]
Andre commented on CXF-2221:
----------------------------
Hi Daniel,
absolutely correct!
after modifying generated code and set the @WebParam(mode = WebParam.Mode.INOUT...
it works perfectly
thanks a lot! waiting for fix of the wsdl2java
> Missing Soap Headers
> --------------------
>
> Key: CXF-2221
> URL: https://issues.apache.org/jira/browse/CXF-2221
> Project: CXF
> Issue Type: Bug
> Components: Tooling
> Affects Versions: 2.1.2, 2.1.3, 2.1.4, 2.2, 2.1.5, 2.2.1
> Environment: java -version
> java version "1.6.0_12"
> Java(TM) SE Runtime Environment (build 1.6.0_12-b04)
> Java HotSpot(TM) 64-Bit Server VM (build 11.2-b01, mixed mode)
> apache-tomcat 6.0.18
> Reporter: Andre
> Attachments: cxf_issue2221.tar.gz
>
>
> Hello everybody,
> I have a bit trouble with the Soap Headers, they are just not generated...
> this is my WSDL: https://api.webtrends.com/Services/AnalyticsDataService.asmx?WSDL
> I generate the client code with "wsdl2java ... -exsh true ..."
> my client code:
> ######################################################################################
> import javax.xml.ws.Holder;
> import org.apache.cxf.interceptor.LoggingInInterceptor;
> import org.apache.cxf.interceptor.LoggingOutInterceptor;
> import org.apache.cxf.jaxws.JaxWsProxyFactoryBean;
> import com.webtrends.ws._1.AnalyticsDataService;
> import com.webtrends.ws._1.WTCredentialsHeader;
> import com.webtrends.ws._1.WTSessionHeader;
> public class Main {
> /**
> * @param args
> */
> public static void main(String[] args) {
> JaxWsProxyFactoryBean factory = new JaxWsProxyFactoryBean();
> factory.getInInterceptors().add(new LoggingInInterceptor());
> factory.getOutInterceptors().add(new LoggingOutInterceptor());
> factory.setServiceClass(AnalyticsDataService.class);
> factory.setAddress("https://api.webtrends.com/Services/AnalyticsDataService.asmx");
> AnalyticsDataService ads = (AnalyticsDataService) factory.create();
> WTCredentialsHeader credentials = new WTCredentialsHeader();
> credentials.setAccountName("foo");
> credentials.setUsername("bar");
> credentials.setPassword("baz");
> Holder<WTCredentialsHeader> credentialsHolder = new Holder<WTCredentialsHeader>(credentials);
> Holder<WTSessionHeader> sessionHolder = new Holder<WTSessionHeader>(new WTSessionHeader());
> ads.checkAvailability(credentialsHolder, sessionHolder);
> }
> }
> ######################################################################################
> 15.05.2009 08:01:43 org.apache.cxf.interceptor.LoggingOutInterceptor$LoggingCallback onClose
> INFO: Outbound Message
> ---------------------------
> Encoding: UTF-8
> Headers: {SOAPAction=["http://www.webtrends.com/WS/1.0/CheckAvailability"], Accept=[*]}
> Messages:
> Payload: <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"><soap:Body><CheckAvailability xmlns="http://www.webtrends.com/WS/1.0"/></soap:Body></soap:Envelope>
> --------------------------------------
> 15.05.2009 08:01:45 org.apache.cxf.interceptor.LoggingInInterceptor logging
> INFO: Inbound Message
> ----------------------------
> Encoding: UTF-8
> Headers: {content-type=[text/xml; charset=utf-8], X-AspNet-Version=[2.0.50727], Date=[Fri, 15 May 2009 06:01:45 GMT], Content-Length=[590], X-Powered-By=[ASP.NET], Server=[Microsoft-IIS/6.0], Cache-Control=[private]}
> Messages:
> Message:
> Payload: <?xml version="1.0" encoding="utf-8"?><soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"><soap:Body><soap:Fault><faultcode>soap:Client</faultcode><faultstring>Authentication failed.</faultstring><faultactor>http://api.webtrends.com/Services/AnalyticsDataService.asmx</faultactor><detail><Reason xmlns="http://www.webtrends.com/schemas/2006/01">Missing WTCredentialsHeader and WTSessionHeader in SOAP message.</Reason></detail></soap:Fault></soap:Body></soap:Envelope>
> --------------------------------------
> Exception in thread "main" javax.xml.ws.soap.SOAPFaultException: Authentication failed.
> at org.apache.cxf.jaxws.JaxWsClientProxy.invoke(JaxWsClientProxy.java:199)
> at $Proxy59.checkAvailability(Unknown Source)
> at rbmh.webplayer.actions.Main.main(Main.java:33)
> Caused by: org.apache.cxf.binding.soap.SoapFault: Authentication failed.
> at org.apache.cxf.binding.soap.interceptor.Soap11FaultInInterceptor.handleMessage(Soap11FaultInInterceptor.java:70)
> at org.apache.cxf.binding.soap.interceptor.Soap11FaultInInterceptor.handleMessage(Soap11FaultInInterceptor.java:35)
> at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:220)
> at org.apache.cxf.interceptor.AbstractFaultChainInitiatorObserver.onMessage(AbstractFaultChainInitiatorObserver.java:96)
> at org.apache.cxf.binding.soap.interceptor.CheckFaultInterceptor.handleMessage(CheckFaultInterceptor.java:69)
> at org.apache.cxf.binding.soap.interceptor.CheckFaultInterceptor.handleMessage(CheckFaultInterceptor.java:34)
> at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:220)
> at org.apache.cxf.endpoint.ClientImpl.onMessage(ClientImpl.java:449)
> at org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.handleResponse(HTTPConduit.java:2029)
> at org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.close(HTTPConduit.java:1865)
> at org.apache.cxf.io.CacheAndWriteOutputStream.postClose(CacheAndWriteOutputStream.java:47)
> at org.apache.cxf.io.CachedOutputStream.close(CachedOutputStream.java:170)
> at org.apache.cxf.transport.AbstractConduit.close(AbstractConduit.java:66)
> at org.apache.cxf.transport.http.HTTPConduit.close(HTTPConduit.java:593)
> at org.apache.cxf.interceptor.MessageSenderInterceptor$MessageSenderEndingInterceptor.handleMessage(MessageSenderInterceptor.java:62)
> at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:220)
> at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:296)
> at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:242)
> at org.apache.cxf.frontend.ClientProxy.invokeSync(ClientProxy.java:73)
> at org.apache.cxf.jaxws.JaxWsClientProxy.invoke(JaxWsClientProxy.java:178)
> ... 2 more
> ######################################################################################
> like u can see. there is no Soap Header in the Outbound Message...
> and now the very funny thing, i'm using maven, so it's very simple to switch to another version of CXF
> the stuff is working perfectly with the older cxf versions: 2.1, 2.1.1
> but if i use the newer versions: 2.1.2, 2.1.3, 2.1.4, 2.1.5, 2.2, 2.2.1, i get the error above
> how can that be? what is wrong
> thanks in dvance
> regards
> andre
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Assigned: (CXF-2221) Missing Soap Headers
Posted by "Daniel Kulp (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/CXF-2221?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Daniel Kulp reassigned CXF-2221:
--------------------------------
Assignee: Daniel Kulp
> Missing Soap Headers
> --------------------
>
> Key: CXF-2221
> URL: https://issues.apache.org/jira/browse/CXF-2221
> Project: CXF
> Issue Type: Bug
> Components: Tooling
> Affects Versions: 2.1.2, 2.1.3, 2.1.4, 2.2, 2.1.5, 2.2.1
> Environment: java -version
> java version "1.6.0_12"
> Java(TM) SE Runtime Environment (build 1.6.0_12-b04)
> Java HotSpot(TM) 64-Bit Server VM (build 11.2-b01, mixed mode)
> apache-tomcat 6.0.18
> Reporter: Andre
> Assignee: Daniel Kulp
> Attachments: cxf_issue2221.tar.gz
>
>
> Hello everybody,
> I have a bit trouble with the Soap Headers, they are just not generated...
> this is my WSDL: https://api.webtrends.com/Services/AnalyticsDataService.asmx?WSDL
> I generate the client code with "wsdl2java ... -exsh true ..."
> my client code:
> ######################################################################################
> import javax.xml.ws.Holder;
> import org.apache.cxf.interceptor.LoggingInInterceptor;
> import org.apache.cxf.interceptor.LoggingOutInterceptor;
> import org.apache.cxf.jaxws.JaxWsProxyFactoryBean;
> import com.webtrends.ws._1.AnalyticsDataService;
> import com.webtrends.ws._1.WTCredentialsHeader;
> import com.webtrends.ws._1.WTSessionHeader;
> public class Main {
> /**
> * @param args
> */
> public static void main(String[] args) {
> JaxWsProxyFactoryBean factory = new JaxWsProxyFactoryBean();
> factory.getInInterceptors().add(new LoggingInInterceptor());
> factory.getOutInterceptors().add(new LoggingOutInterceptor());
> factory.setServiceClass(AnalyticsDataService.class);
> factory.setAddress("https://api.webtrends.com/Services/AnalyticsDataService.asmx");
> AnalyticsDataService ads = (AnalyticsDataService) factory.create();
> WTCredentialsHeader credentials = new WTCredentialsHeader();
> credentials.setAccountName("foo");
> credentials.setUsername("bar");
> credentials.setPassword("baz");
> Holder<WTCredentialsHeader> credentialsHolder = new Holder<WTCredentialsHeader>(credentials);
> Holder<WTSessionHeader> sessionHolder = new Holder<WTSessionHeader>(new WTSessionHeader());
> ads.checkAvailability(credentialsHolder, sessionHolder);
> }
> }
> ######################################################################################
> 15.05.2009 08:01:43 org.apache.cxf.interceptor.LoggingOutInterceptor$LoggingCallback onClose
> INFO: Outbound Message
> ---------------------------
> Encoding: UTF-8
> Headers: {SOAPAction=["http://www.webtrends.com/WS/1.0/CheckAvailability"], Accept=[*]}
> Messages:
> Payload: <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"><soap:Body><CheckAvailability xmlns="http://www.webtrends.com/WS/1.0"/></soap:Body></soap:Envelope>
> --------------------------------------
> 15.05.2009 08:01:45 org.apache.cxf.interceptor.LoggingInInterceptor logging
> INFO: Inbound Message
> ----------------------------
> Encoding: UTF-8
> Headers: {content-type=[text/xml; charset=utf-8], X-AspNet-Version=[2.0.50727], Date=[Fri, 15 May 2009 06:01:45 GMT], Content-Length=[590], X-Powered-By=[ASP.NET], Server=[Microsoft-IIS/6.0], Cache-Control=[private]}
> Messages:
> Message:
> Payload: <?xml version="1.0" encoding="utf-8"?><soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"><soap:Body><soap:Fault><faultcode>soap:Client</faultcode><faultstring>Authentication failed.</faultstring><faultactor>http://api.webtrends.com/Services/AnalyticsDataService.asmx</faultactor><detail><Reason xmlns="http://www.webtrends.com/schemas/2006/01">Missing WTCredentialsHeader and WTSessionHeader in SOAP message.</Reason></detail></soap:Fault></soap:Body></soap:Envelope>
> --------------------------------------
> Exception in thread "main" javax.xml.ws.soap.SOAPFaultException: Authentication failed.
> at org.apache.cxf.jaxws.JaxWsClientProxy.invoke(JaxWsClientProxy.java:199)
> at $Proxy59.checkAvailability(Unknown Source)
> at rbmh.webplayer.actions.Main.main(Main.java:33)
> Caused by: org.apache.cxf.binding.soap.SoapFault: Authentication failed.
> at org.apache.cxf.binding.soap.interceptor.Soap11FaultInInterceptor.handleMessage(Soap11FaultInInterceptor.java:70)
> at org.apache.cxf.binding.soap.interceptor.Soap11FaultInInterceptor.handleMessage(Soap11FaultInInterceptor.java:35)
> at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:220)
> at org.apache.cxf.interceptor.AbstractFaultChainInitiatorObserver.onMessage(AbstractFaultChainInitiatorObserver.java:96)
> at org.apache.cxf.binding.soap.interceptor.CheckFaultInterceptor.handleMessage(CheckFaultInterceptor.java:69)
> at org.apache.cxf.binding.soap.interceptor.CheckFaultInterceptor.handleMessage(CheckFaultInterceptor.java:34)
> at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:220)
> at org.apache.cxf.endpoint.ClientImpl.onMessage(ClientImpl.java:449)
> at org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.handleResponse(HTTPConduit.java:2029)
> at org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.close(HTTPConduit.java:1865)
> at org.apache.cxf.io.CacheAndWriteOutputStream.postClose(CacheAndWriteOutputStream.java:47)
> at org.apache.cxf.io.CachedOutputStream.close(CachedOutputStream.java:170)
> at org.apache.cxf.transport.AbstractConduit.close(AbstractConduit.java:66)
> at org.apache.cxf.transport.http.HTTPConduit.close(HTTPConduit.java:593)
> at org.apache.cxf.interceptor.MessageSenderInterceptor$MessageSenderEndingInterceptor.handleMessage(MessageSenderInterceptor.java:62)
> at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:220)
> at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:296)
> at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:242)
> at org.apache.cxf.frontend.ClientProxy.invokeSync(ClientProxy.java:73)
> at org.apache.cxf.jaxws.JaxWsClientProxy.invoke(JaxWsClientProxy.java:178)
> ... 2 more
> ######################################################################################
> like u can see. there is no Soap Header in the Outbound Message...
> and now the very funny thing, i'm using maven, so it's very simple to switch to another version of CXF
> the stuff is working perfectly with the older cxf versions: 2.1, 2.1.1
> but if i use the newer versions: 2.1.2, 2.1.3, 2.1.4, 2.1.5, 2.2, 2.2.1, i get the error above
> how can that be? what is wrong
> thanks in dvance
> regards
> andre
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.