I'm not sure you want to do things that way---normally the ApplicationContext should be configuring your SEI implementation, not vice-versa, but hopefully someone else can give you more complete information here.
Anyway, to answer your question at least, the SEI will not have any reference to the AppContext--it's definition is defined by the Spring-less JAX-WS standard and would be the same if you used GlassFish Metro to generate it. However, you can have your SEI implementation class implement an additional interface--Spring's ApplicationContextAware interface. That will allow you to populate your SEI impl. with the config file. But AFAIK this is rarely done. Glen Am Mittwoch, den 14.11.2007, 16:48 -0800 schrieb Aaron Yyyy: > I am new to CXF and I am trying to use it with Spring. > > What is the best way to obtain the ApplicationContext in a class that was > generated by the wsdl2java utility? I currently have the > applicationContext.xml file in the WEB-INF directory but I don't know how to > obtain the context. Since the application is packaged in a war, I would like > to obtain the context using WebXMLApplicationContext but I don't know how to > get the ServletContext first. > > Here is the interface generated by CXF: > ========================================= > package com.example; > > import javax.jws.WebParam.Mode; > import javax.jws.WebParam; > import javax.jws.WebService; > import javax.jws.soap.SOAPBinding.Style; > import javax.jws.soap.SOAPBinding; > import javax.jws.WebMethod; > import javax.jws.WebResult; > > /** > * This class was generated by Apache CXF (incubator) 2.0.3-incubator > * Wed Nov 14 14:50:54 PST 2007 > * Generated source version: 2.0.3-incubator > * > */ > > @WebService(targetNamespace = "http://example.com/soap", name = > "HelloWorldPortType") > @SOAPBinding(parameterStyle = SOAPBinding.ParameterStyle.BARE) > > public interface HelloWorldPortType { > > @SOAPBinding(parameterStyle = SOAPBinding.ParameterStyle.BARE) > @WebResult(targetNamespace = "http://example.com/soap/types", partName = > "body", name = "HellowWorldResponse") > @WebMethod(action = "HellowWorld", operationName = "HellowWorld") > public com.example.soap.types.HellowWorldResponse hellowWorld( > @WebParam(targetNamespace = "http://example.com/soap/types", partName > = "body", name = "HellowWorldRequest") > com.example.soap.types.HellowWorldRequest body > ); > } > > > Here is my implementation class: > ================================== > package com.example; > > import java.util.logging.Logger; > > import javax.jws.WebMethod; > import javax.jws.WebParam; > import javax.jws.WebResult; > import javax.jws.soap.SOAPBinding; > > import com.example.soap.HellowWorldPortType; > > @javax.jws.WebService(portName = "HelloWorldPort", serviceName = > "HelloWorldService", > targetNamespace = "http://example.com/soap", > endpointInterface = > "com.example.soap.HellowWorldPortType") > @javax.xml.ws.BindingType(value = > "http://www.w3.org/2003/05/soap/bindings/HTTP/") > public class HellowWorldImpl implements HellowWorldPortType { > > private static final Logger LOG = > Logger.getLogger(HellowWorldImpl.class.getPackage().getName()); > > @SOAPBinding(parameterStyle = SOAPBinding.ParameterStyle.BARE) > @WebResult(targetNamespace = "http://example.com/soap/types", partName = > "body", name = "HellowWorldResponse") > @WebMethod(action = "HellowWorld", operationName = "HellowWorld") > public com.example.soap.types.HellowWorldResponse helloWorld( > @WebParam(targetNamespace = "http://example.com/soap/types", partName > = "body", name = "HellowWorldRequest") > com.example.soap.types.HellowWorldRequest body > ){ > > //how to I access Spring Application context from here when I don't > have access to servletContext??? > XmlWebApplicationContext ctx = new XmlWebApplicationContext(); > ctx.setConfigLocations(files); > ctx.setServletContext(servletContext); > ctx.refresh(); > > ctx.getBean("hello"); > > HellowWorldResponse hwr = new HellowWorldResponse(); > > return hwr; > } > } > > --------------------------------- > Never miss a thing. Make Yahoo your homepage.
