It looks like the Metro installed by default with GlassFish is getting
activated, not CXF. I suspect you're trying to do too much at once,
making it hard to troubleshoot. I would make it a two-step process:
1.) Get your sample below working on simple Tomcat where there's no
Metro conflicts
(http://www.jroller.com/gmazza/entry/web_service_tutorial can help even
though it's a different sample)
2.) Then try to figure out the portion of getting the same WAR to work
on GlassFish (where you'll need to suppress the Metro libraries)
*Or*
1.) Get the simplest possible web service working on GlassFish
(http://www.jroller.com/gmazza/entry/web_service_tutorial is a good
candidate, although I've never tried to get it to work on GlassFish)
2.) Then try to get things working with the
"http://cxf.apache.org/bindings/xformat" BindingType.
Incidentally, I'm not sure but there's a very good chance our XML over
HTTP binding (which I very rarely hear about nowadays) is obsolete with
JAX-RS / REST. I would first rule out CXF's JAX-RS implementation, as
well as the standard SOAP over HTTP binding, as useful options for you
before considering XML over HTTP.
Glen
On 06/22/2012 03:33 PM, java kurious wrote:
Hi
I am trying to follow "CXF sample using WRAPPED Style in XML
Binding(pure XML)" to create a Web Service for Stock Quote. The WSDL
is attached. The difference is that I am using a web application
structure and trying to deploy it in Glassfish 3.1.
I created a Service Implementation class, and specified the binding
annotation. See below:
@javax.jws.WebService
@javax.xml.ws.BindingType(value =
"http://cxf.apache.org/bindings/xformat")
public class PureXMLBindingImpl implements DelayedStockQuoteSoap{
@Override
public QuoteData getQuote(String stockSymbol, String licenseKey) {
throw new UnsupportedOperationException("Not supported yet.");
}
@Override
public BigDecimal getQuickQuote(String stockSymbol, String
licenseKey) {
return new BigDecimal(2.0);
}
When I deploy it to Glassfish, I get following exception:
javax.xml.ws.WebServiceException: Wrong binding ID:
http://cxf.apache.org/bindings/xformat
at com.sun.xml.ws.api.BindingID.parse(BindingID.java:278)
at
org.glassfish.webservices.WSServletContextListener.registerEndpoint(WSServletContextListener.java:265)
at
org.glassfish.webservices.WSServletContextListener.contextInitialized(WSServletContextListener.java:102)
Any ideas ?
Thanks
Vineet
--
Glen Mazza
Talend Community Coders
coders.talend.com
blog:www.jroller.com/gmazza