cxf-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Willem Jiang <ning.ji...@iona.com>
Subject Re: Can't find the the request for http://localhost:7001/LSPApp/services/HelloWorld's Observer
Date Fri, 21 Sep 2007 09:50:22 GMT
This a well know issue, you can find the issues from the below URLs.

[1]CXF JIRA 922
https://issues.apache.org/jira/browse/CXF-922
[2]Set the SSL parament with Java API
http://www.nabble.com/Error-when-trying-to-contact-service-over-SSL-on-a-specific-port-tf4424617.html#a12654695

BTW, here is also a Chinese thread talking about this in the cxf-zh.
http://groups.google.com/group/cxf-zh/browse_thread/thread/1be279db5e9fe57c/08861d485d0a3642#08861d485d0a3642

Willem.

Roger_Wang@Dell.com wrote:
>  Willem:
> thanks a lots for your help.
> you are right.we do not need to add httpj:engine-factory to our spring config file --beans.xml.
> i solved this problem. i config ssl on my weblogic9.2. and i can use the client generated
from WSDL  call the webservice with web security over https protocal.
> but if i use the spring client ,there are some error happen. i add -Dcxf.config.file=sslClient.xml
to the client jvm arguments. but obviuosly, sslClient.xml does not work when i use spring
client.
> how to use spring client to call https webserive? 
>
>
> thanks in advance!
>
> Roger
>
>
> --------------log  ------
> 2007-9-21 17:27:13 org.apache.cxf.service.factory.ReflectionServiceFactoryBean buildServiceFromClass
> 信息: Creating Service {http://interfaces.service.scan.dragonfx.dell.com/}HelloWorldService
from class com.dell.dragonfx.scan.service.interfaces.HelloWorld
> 2007-9-21 17:27:14 org.apache.cxf.phase.PhaseInterceptorChain doIntercept
> 信息: Interceptor has thrown exception, unwinding now
> org.apache.cxf.interceptor.Fault: Could not send Message.
> 	at org.apache.cxf.interceptor.MessageSenderInterceptor.handleMessage(MessageSenderInterceptor.java:48)
> 	at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:207)
> 	at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:254)
> 	at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:205)
> 	at org.apache.cxf.frontend.ClientProxy.invokeSync(ClientProxy.java:73)
> 	at org.apache.cxf.jaxws.JaxWsClientProxy.invoke(JaxWsClientProxy.java:135)
> 	at $Proxy32.sayHi(Unknown Source)
> 	at com.dell.dragonfx.scan.service.Client.main(Client.java:42)
> Caused by: java.io.IOException: Illegal Protocol https for HTTP URLConnection Factory.
> 	at org.apache.cxf.transport.http.HttpURLConnectionFactoryImpl.createConnection(HttpURLConnectionFactoryImpl.java:44)
> 	at org.apache.cxf.transport.http.HTTPConduit.prepare(HTTPConduit.java:474)
> 	at org.apache.cxf.interceptor.MessageSenderInterceptor.handleMessage(MessageSenderInterceptor.java:46)
> 	... 7 more
> Exception in thread "main" javax.xml.ws.soap.SOAPFaultException: Could not send Message.
> 	at org.apache.cxf.jaxws.JaxWsClientProxy.invoke(JaxWsClientProxy.java:169)
> 	at $Proxy32.sayHi(Unknown Source)
> 	at com.dell.dragonfx.scan.service.Client.main(Client.java:42)
> Caused by: org.apache.cxf.interceptor.Fault: Could not send Message.
> 	at org.apache.cxf.interceptor.MessageSenderInterceptor.handleMessage(MessageSenderInterceptor.java:48)
> 	at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:207)
> 	at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:254)
> 	at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:205)
> 	at org.apache.cxf.frontend.ClientProxy.invokeSync(ClientProxy.java:73)
> 	at org.apache.cxf.jaxws.JaxWsClientProxy.invoke(JaxWsClientProxy.java:135)
> 	... 2 more
> Caused by: java.io.IOException: Illegal Protocol https for HTTP URLConnection Factory.
> 	at org.apache.cxf.transport.http.HttpURLConnectionFactoryImpl.createConnection(HttpURLConnectionFactoryImpl.java:44)
> 	at org.apache.cxf.transport.http.HTTPConduit.prepare(HTTPConduit.java:474)
> 	at org.apache.cxf.interceptor.MessageSenderInterceptor.handleMessage(MessageSenderInterceptor.java:46)
> 	... 7 more
> --------sslClient------------
> <?xml version="1.0" encoding="UTF-8"?>
>
> <beans xmlns="http://www.springframework.org/schema/beans"
>   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
>   xmlns:sec="http://cxf.apache.org/configuration/security"
>   xmlns:http="http://cxf.apache.org/transports/http/configuration"
>   xmlns:jaxws="http://java.sun.com/xml/ns/jaxws"
>   xsi:schemaLocation="
>            http://cxf.apache.org/configuration/security
>            http://cxf.apache.org/schemas/configuration/security.xsd
>            http://cxf.apache.org/transports/http/configuration
>            http://cxf.apache.org/schemas/configuration/http-conf.xsd
>            http://www.springframework.org/schema/beans
>            http://www.springframework.org/schema/beans/spring-beans.xsd">
>
>   <http:conduit name="{http://backendService.scan.dragonfx.dell.com/}HelloWorldImplPort.http-conduit">
>     <http:tlsClientParameters>    
>       <sec:trustManagers>
>           <sec:keyStore type="JKS" password="password"
>                file="c:\bea\server\mykeystore"/>
>       </sec:trustManagers>
>       <sec:keyManagers keyPassword="password">
>            <sec:keyStore type="JKS" password="password" 
>                 file="c:\bea\server\cacerts"/>
>       </sec:keyManagers>
>       <sec:cipherSuitesFilter>
>         <sec:include>.*_EXPORT_.*</sec:include>
>         <sec:include>.*_EXPORT1024_.*</sec:include>
>         <sec:include>.*_WITH_DES_.*</sec:include>
>         <sec:include>.*_WITH_NULL_.*</sec:include>
>         <sec:exclude>.*_DH_anon_.*</sec:exclude>
>       </sec:cipherSuitesFilter>
>      
>     </http:tlsClientParameters>
>    </http:conduit>
>   
>     <bean id="cxf" class="org.apache.cxf.bus.CXFBusImpl">
>     </bean> 
>
> </beans>
>
> -----client-bean.xml------
> <?xml version="1.0" encoding="UTF-8"?>
> <beans xmlns="http://www.springframework.org/schema/beans"
> 	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
> 	xmlns:jaxws="http://cxf.apache.org/jaxws"
> 	xmlns:sec="http://cxf.apache.org/configuration/security"
> 	xmlns:http="http://cxf.apache.org/transports/http/configuration"
> 	xmlns:httpj="http://cxf.apache.org/transports/http-jetty/configuration"
> 	xsi:schemaLocation="
> http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
> http://cxf.apache.org/jaxws http://cxf.apache.org/schemas/jaxws.xsd
>  http://cxf.apache.org/configuration/security  		      http://cxf.apache.org/schemas/configuration/security.xsd
>             http://cxf.apache.org/transports/http/configuration
>             http://cxf.apache.org/schemas/configuration/http-conf.xsd
>             http://cxf.apache.org/transports/http-jetty/configuration
>             http://cxf.apache.org/schemas/configuration/http-jetty.xsd">
>
> 	<import resource="classpath:META-INF/cxf/cxf.xml" />
> 	<import resource="classpath:META-INF/cxf/cxf-extension-soap.xml" />
> 	<import resource="classpath:META-INF/cxf/cxf-servlet.xml" />
> 	<!-- 
> 	<import resource="classpath:sslClient.xml" />
> 	 -->
> 	<bean id="client"
> 		class="com.dell.dragonfx.scan.service.interfaces.HelloWorld"
> 		factory-bean="clientFactory" factory-method="create" />
>
> 	<bean id="clientFactory"
> 		class="org.apache.cxf.jaxws.JaxWsProxyFactoryBean">
> 		<property name="serviceClass"
> 			value="com.dell.dragonfx.scan.service.interfaces.HelloWorld" />
> 		<property name="address"
> 			value="https://localhost:7002/LSPApp/services/HelloWorld" />
>
> 		<property name="outInterceptors">
> 			<list>
> 				<bean
> 					class="org.apache.cxf.binding.soap.saaj.SAAJOutInterceptor" />
> 				<bean
> 					class="org.apache.cxf.ws.security.wss4j.WSS4JOutInterceptor">
> 					<constructor-arg>
> 						<map>
> 							<entry key="action" value="UsernameToken" />
> 							<entry key="user" value="joe" />
> 							<entry key="passwordType"
> 								value="PasswordText" />
> 							<entry key="passwordCallbackClass"
> 								value="com.demo.wss4j.interceptors.ClientPasswordCallback" />
> 						</map>
> 					</constructor-arg>
> 				</bean>
> 			</list>
> 		</property>
> 	</bean>
> <!-- 
> 	<http:conduit
> 		name="{http://backendService.scan.dragonfx.dell.com/}HelloWorldImplPort.http-conduit">
> 		<http:tlsClientParameters>
> 			<sec:trustManagers>
> 				<sec:keyStore type="JKS" password="password"
> 					file="c:\bea\server\mykeystore" />
> 			</sec:trustManagers>
> 			<sec:keyManagers keyPassword="password">
> 				<sec:keyStore type="JKS" password="password"
> 					file="c:\bea\server\cacerts" />
> 			</sec:keyManagers>
> 			<sec:cipherSuitesFilter>
> 				<sec:include>.*_EXPORT_.*</sec:include>
> 				<sec:include>.*_EXPORT1024_.*</sec:include>
> 				<sec:include>.*_WITH_DES_.*</sec:include>
> 				<sec:include>.*_WITH_NULL_.*</sec:include>
> 				<sec:exclude>.*_DH_anon_.*</sec:exclude>
> 			</sec:cipherSuitesFilter>
>
> 		</http:tlsClientParameters>
> 	</http:conduit>
>  -->
> </beans>
>
>
> thanks
>
> Roger
>
> -----Original Message-----
> From: Willem Jiang [mailto:ning.jiang@iona.com] 
> Sent: 2007年9月21日 17:18
> To: cxf-user@incubator.apache.org
> Subject: Re: Can't find the the request for http://localhost:7001/LSPApp/services/HelloWorld's
Observer
>
> Sorry, I forget to attach the url.
> It is
> http://cwiki.apache.org/CXF20DOC/writing-a-service-with-spring.html
>
> Willem.
>
>
> Willem Jiang wrote:
>   
>> Hi Roger,
>>
>> If you want to use the https transport by leveraging the Servlet 
>> transport , you do not need to specify the httpj:engine-factory in 
>> your bean.xml.
>> httpj:engine-factory only take effect if you use the jetty as your 
>> http transport engine.
>>
>> After I went through your bean.xml, I can't found any endpoint 
>> specification there. You did not publish any endpoint yet, so you got 
>> the error of
>>
>> "Can't find the the request for http://localhost:7001/LSPApp/services/HelloWorld's
Observer"
>>
>> Please refer this [1] to publish a service without ssl transport first.
>>
>> Willem.
>>
>> Roger_Wang@Dell.com wrote:
>>   
>>     
>>> all:
>>>
>>> i want to publish CXF(2.01) webservice with WSS(user token) over SSL to weblogic
9.2. 
>>> i got this error when a client to call the service. and i donot think weblogic
has publish service succesfull,but there is not error happen according to the console:
>>>
>>> 2007-9-21 9:34:54 org.apache.cxf.transport.servlet.ServletController 
>>> invoke
>>> 警告: Can't find the the request for 
>>> http://localhost:7001/LSPApp/services/HelloWorld's Observer
>>>
>>> -----------------cxfServer.xml--------------------------
>>> <?xml version="1.0" encoding="UTF-8"?>
>>>
>>> <beans xmlns="http://www.springframework.org/schema/beans"
>>>   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
>>>   xmlns:sec="http://cxf.apache.org/configuration/security"
>>>   xmlns:http="http://cxf.apache.org/transports/http/configuration"
>>>   xmlns:httpj="http://cxf.apache.org/transports/http-jetty/configuration"
>>>   xmlns:jaxws="http://cxf.apache.org/jaxws"
>>>   xsi:schemaLocation="
>>>        http://cxf.apache.org/configuration/security  		      http://cxf.apache.org/schemas/configuration/security.xsd
>>>             http://cxf.apache.org/transports/http/configuration
>>>             http://cxf.apache.org/schemas/configuration/http-conf.xsd
>>>             http://cxf.apache.org/transports/http-jetty/configuration
>>>             http://cxf.apache.org/schemas/configuration/http-jetty.xsd
>>>             http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">
>>>            	<import resource="classpath:META-INF/cxf/cxf.xml" />
>>> 	<import resource="classpath:META-INF/cxf/cxf-extension-soap.xml" />
>>> 	<import resource="classpath:META-INF/cxf/cxf-servlet.xml" />
>>> 	
>>>   <http:destination name="{http://interfaces.service.scan.dragonfx.dell.com/}HelloWorldService.HelloWorldImplPort">

>>>   </http:destination>
>>>
>>>   <httpj:engine-factory bus="cxf">  
>>>    <httpj:engine port="7002">   
>>>     <httpj:tlsServerParameters>     
>>>       <sec:keyManagers keyPassword="password">
>>>            <sec:keyStore type="JKS" password="password" 
>>>                 file="c:\bea\server\mykeystore"/>
>>>       </sec:keyManagers>
>>>       <sec:trustManagers>
>>>           <sec:keyStore type="JKS" password="password"
>>>                file="c:\bea\server\cacerts"/>
>>>       </sec:trustManagers>
>>>       <sec:cipherSuitesFilter>
>>>         <sec:include>.*_EXPORT_.*</sec:include>
>>>         <sec:include>.*_EXPORT1024_.*</sec:include>
>>>         <sec:include>.*_WITH_DES_.*</sec:include>
>>>         <sec:include>.*_WITH_NULL_.*</sec:include>
>>>         <sec:exclude>.*_DH_anon_.*</sec:exclude>
>>>       </sec:cipherSuitesFilter>
>>>       
>>>       <sec:clientAuthentication want="true" required="true"/>
>>>       
>>>     </httpj:tlsServerParameters>
>>>    </httpj:engine>
>>>   </httpj:engine-factory>
>>>   
>>>   <!-- We need a bean named "cxf" -->
>>>
>>> </beans>
>>>
>>> -------------sslclient.xml------------------
>>>
>>> <?xml version="1.0" encoding="UTF-8"?>
>>>
>>> <beans xmlns="http://www.springframework.org/schema/beans"
>>>   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
>>>   xmlns:sec="http://cxf.apache.org/configuration/security"
>>>   xmlns:http="http://cxf.apache.org/transports/http/configuration"
>>>   xmlns:jaxws="http://java.sun.com/xml/ns/jaxws"
>>>   xsi:schemaLocation="
>>>            http://cxf.apache.org/configuration/security
>>>            http://cxf.apache.org/schemas/configuration/security.xsd
>>>            http://cxf.apache.org/transports/http/configuration
>>>            http://cxf.apache.org/schemas/configuration/http-conf.xsd
>>>            http://www.springframework.org/schema/beans
>>>            
>>> http://www.springframework.org/schema/beans/spring-beans.xsd">
>>>
>>>   <http:conduit name="{http://interfaces.service.scan.dragonfx.dell.com/}HelloWorldImplService.HttpConduit">
>>>     <http:tlsClientParameters>
>>>     
>>>       <sec:trustManagers>
>>>           <sec:keyStore type="JKS" password="password"
>>>                file="c:\bea\server\mykeystore"/>
>>>       </sec:trustManagers>
>>>       <sec:keyManagers keyPassword="password">
>>>            <sec:keyStore type="JKS" password="password" 
>>>                 file="c:\bea\server\cacerts"/>
>>>       </sec:keyManagers>
>>>       <sec:cipherSuitesFilter>
>>>         <sec:include>.*_EXPORT_.*</sec:include>
>>>         <sec:include>.*_EXPORT1024_.*</sec:include>
>>>         <sec:include>.*_WITH_DES_.*</sec:include>
>>>         <sec:include>.*_WITH_NULL_.*</sec:include>
>>>         <sec:exclude>.*_DH_anon_.*</sec:exclude>
>>>       </sec:cipherSuitesFilter>
>>>      
>>>     </http:tlsClientParameters>
>>>    </http:conduit>
>>>   
>>>     <bean id="cxf" class="org.apache.cxf.bus.CXFBusImpl">
>>>     </bean>
>>>
>>> </beans>
>>>
>>>
>>> thanks for any help
>>>
>>> Roger
>>>
>>>   
>>>     
>>>       
>>   
>>     
>
>   

Mime
View raw message