cxf-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From <Roger_W...@Dell.com>
Subject RE: Can't find the the request for http://localhost:7001/LSPApp/services/HelloWorld's Observer
Date Fri, 21 Sep 2007 09:32:57 GMT
 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