Hi,
Yeah, Johan is correct.
You use
<import resource="classpath:META-INF/cxf/cxf-extension-http-
jetty.xml" />
which means you use jetty transport, so the address should be
http://.....blabla.
But if you wanna use address like /XYZCustomerMgmtWSPort, which means
you use http-osgi transport, you need have
<import resource="classpath:META-INF/cxf/osgi/cxf-extension-osgi.xml" />
instead.
Btw, since from SMX4.4, you even needn't have cxf-extension-xxx.xml at
all, you just specify address /XYZCustomerMgmtWSPort or http://blabla
and CXF bus can load correct transport for you accordingly.
Freeman
On 2012-5-16, at 上午4:11, Johan Edstrom wrote:
Add http-transport-osgi or set the http://0.0.0.0:port part.
On May 15, 2012, at 1:45 PM, nareshkpotti wrote:
I am trying to create a web service using service mix 4.3, apache
cxf 2.3 and
spring 3.0.5.I am following WSDL first method for this I created a
WSDL and
generated code from it and I am writing web service implementation in
generated implementation class and defining endpoint in context
file as
<jaxws:endpoint id="XYZCustomerMgmtWS"
address="/XYZCustomerMgmtWSPort"
implementor
="com.xyz.abc.customermgmt.services.impl.CustomerMgmtWSImpl"
/>.
I even included these in context file.
<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-extension-http-
jetty.xml" />
I am creating service as a osgi bundle(jar file) and deploying it
into
service mix.
I included cxf in import package and required bundle too.
When i try to install bundle, i am getting
ServiceConstructionException.
How can i fix this problem? Suggestions please. Does it require any
HTTP
transport? How can i make it to work to take address from context.
Do i need
to install anything more?
Root cause is
Caused by: java.net.MalformedURLException: no protocol:
/XYZCustomerMgmtWSPort
at java.net.URL.<init>(URL.java:567)
at java.net.URL.<init>(URL.java:464)
at java.net.URL.<init>(URL.java:413)
at
org
.apache
.cxf
.transport
.http_jetty.JettyHTTPDestination.<init>(JettyHTTPDestination.java:92)
at
org
.apache
.cxf
.transport
.http_jetty
.JettyHTTPTransportFactory
.createDestination(JettyHTTPTransportFactory.java:99)
at
org
.apache
.cxf
.transport
.http_jetty
.JettyHTTPTransportFactory
.getDestination(JettyHTTPTransportFactory.java:86)
at
org
.apache
.cxf
.binding
.soap.SoapTransportFactory.getDestination(SoapTransportFactory.java:
132)
at
org.apache.cxf.endpoint.ServerImpl.initDestination(ServerImpl.java:
92)
at org.apache.cxf.endpoint.ServerImpl.<init>(ServerImpl.java:71)
at
org
.apache
.cxf.frontend.ServerFactoryBean.create(ServerFactoryBean.java:149)
... 45 more
Thanks,
Potti
--
View this message in context:
http://servicemix.396122.n5.nabble.com/Creating-Webservice-in-servicemix-with-cxf-and-install-as-a-osgi-bundle-tp5710339.html
Sent from the ServiceMix - User mailing list archive at Nabble.com.
---------------------------------------------
Freeman Fang
FuseSource
Email:[email protected]
Web: fusesource.com
Twitter: freemanfang
Blog: http://freemanfang.blogspot.com
http://blog.sina.com.cn/u/1473905042
weibo: http://weibo.com/u/1473905042