Hi Dan,

I encountered this error when trying to generate the java code from wsdl using wsdl2java from cfx 2.3.0:

WSDLToJava Error: java.lang.reflect.UndeclaredThrowableException

I never had this error with 2.2.10 at least. Is it a bug? or is there any thing that I need to take care of in 2.30?

Thank you in advance.

Bayu

On 03-11-2010 16:24, Daniel Kulp wrote:


What version of CXF?   At one point, there was a bug where interceptors added
to the endpoint directly didn't get added to the chain.  Make sure you are
using 2.3.0.

Also, in your code below, you are not setting any actions on the
Wss4jInInterceptor.  Thus, it may be bailing out fast as its not supposed to
do any actions.

Dan


On Wednesday 03 November 2010 5:24:49 am siuyab wrote:
Dear all,

Actually I posted this question under different thread, but I think it's
better to start as a new thread.

I have to say that I am new to web service and CXF stuff. I currently
trying to add simple username token of ws-security on an already developed
code which is using CXFNonSpringServlet.

In the override loadBus method, the endpoint is published in this way:
javax.xml.ws.Endpoint.publish("/query", service);

Then I followed the ws-security example as written in following website,
without configuring the Spring:
https://cwiki.apache.org/CXF20DOC/ws-security.html#WS-Security-addintercept
ors

ws-security configuration at server side was also done in the loadBus
method.

At the server side however, I didn't follow exactly the same think as shown
in the example because in the example Endpoint refers to
org.apache.cxf.endpoint.Endpoint, but in the code it refers to
javax.xml.ws.Endpoint. So, here is the slightly modified code:


EndpointImpl jaxwsEndpoint = (EndpointImpl)Endpoint.publish("/query",
service);
Endpoint cxfEndpoint = (Endpoint) jaxwsEndpoint.getServer().getEndpoint();

/** Adding Incoming Interceptors */
Map<String,Object>  inProps= new HashMap<String,Object>();

WSS4JInInterceptor wssIn = new WSS4JInInterceptor(inProps);
((EndpointImpl) cxfEndpoint).getInInterceptors().add(wssIn);


I got the following error when client tries to execute the method in web
service:


Caused by: org.apache.cxf.binding.soap.SoapFault: MustUnderstand headers:
[{http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext
-1.0.xsd}Security] are not understood.
         at
org.apache.cxf.binding.soap.interceptor.Soap11FaultInInterceptor.unmarshalF
ault(Soap11FaultInInterceptor.java:75) at
org.apache.cxf.binding.soap.interceptor.Soap11FaultInInterceptor.handleMess
age(Soap11FaultInInterceptor.java:46) at
org.apache.cxf.binding.soap.interceptor.Soap11FaultInInterceptor.handleMess
age(Soap11FaultInInterceptor.java:35) at
org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChai
n.java:243) at
org.apache.cxf.interceptor.AbstractFaultChainInitiatorObserver.onMessage(Ab
stractFaultChainInitiatorObserver.java:99) 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(PhaseInterceptorChai
n.java:243) at
org.apache.cxf.endpoint.ClientImpl.onMessage(ClientImpl.java:700) at
org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.handleRespons
eInternal(HTTPConduit.java:2261) at
org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.handleRespons
e(HTTPConduit.java:2134) at
org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.close(HTTPCon
duit.java:1988) at
org.apache.cxf.transport.AbstractConduit.close(AbstractConduit.java:66)
         at
org.apache.cxf.transport.http.HTTPConduit.close(HTTPConduit.java:639)
         at
org.apache.cxf.interceptor.MessageSenderInterceptor$MessageSenderEndingInte
rceptor.handleMessage(MessageSenderInterceptor.java:62) at
org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChai
n.java:243) at
org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:487) at
org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:313) at
org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:265) at
org.apache.cxf.frontend.ClientProxy.invokeSync(ClientProxy.java:73)
         at
org.apache.cxf.jaxws.JaxWsClientProxy.invoke(JaxWsClientProxy.java:124)
         ... 30 more

Can somebody give some clue on how to solve this issue please? Perhaps this
is very basic or stupid question, but any help will be appreciated.

Regards,
Bayu



--
Kind Regards,
Bayu Anggorojati - Research Assistant

Wireless Security and Sensor Networks Group
Networking and Security Center for TeleInFrastruktur (CTIF), Aalborg University
Fredrik Bajers 7, room A3-211
Aalborg University
DK-9220  -  Denmark

Office    +45 9940 8661
Mobile    +45 5015 3183

Email: b...@es.aau.dk

Reply via email to