用cxf直接将一个pojo作为WS进行发布,如果想在pojo中读取container的配置参数,由于pojo和Servlet无半点关系,这里借助WebServiceContext,代码:
public class HelloWorld implements IHelloWorld {
@Resource
private WebServiceContext context;
@Override
public String say(String name) {
ServletContext servletContext = (ServletContext)context.getMessageContext().get(MessageContext.SERVLET_CONTEXT);
System.out.println(servletContext.getInitParameter("loc"));//loc是web.xml中的<context-param>
System.out.println(servletContext.getInitParameter("loc2"));//loc2是web.xml单独为Servlet配置的<init-param>
System.out.println("================");
try {
System.out.println(this.getClass().getResource("/").toURI());
} catch (URISyntaxException e) {
e.printStackTrace();
}
return "your name is "+name;
}
定义一个WebServiceContext变量,container会自动注入,因此可以直接使用。
代码参考: http://stackoverflow.com/questions/261348/how-can-i-access-the-servletcontext-from-within-a-jax-ws-web-service
同时感谢群里的tank大牛。
但这里有个问题:就是只能取<context-param>中的参数,单独为<servlet>配置的参数取不到。
其实还有一个解决方法:继承CXFServlet,然后重写里面相应的方法。
分享到:
相关推荐
<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"/>
3、web.xml里配置spring监听器,及其加载的beans.xml,把cxf-servlet.xml删掉,发布到WEB服务器即可,注意这种方式在必须需要本地wsdl文件 手动放在src下,默认发布到web服务器的路径为WEB-INF/classes/xxx.wsdl ...
这时干净的cxf的核心配置文件·
PacktPub.Apache.CXF.Web.Service.Development.Dec.2009.rar
1)参考: ...2)CXFWS工程是基于WS-Security规范,实现X.509身份验证的,同时实现签名和加密 keytool 工具的使用参考 http://hi.baidu.com/qianshuifanchuan/blog/item/6291b8510009ad3c42a75b8e.html ...
本例子是通过CXF服务端来发布Rest服务,同时在客户端进行接收。本例子是自己学习CXF Rest时候写的,希望能给需求的人帮助.CXF的版本号为2.3.3,请自己下载CXF2.3.3的jar包.
因为上传大小的限制.我把lib包删除了.运行前,请先下载...因为我在web.xml里配的它的路径是<url-pattern>/ws/*</url-pattern>.这个是根据需要可以改变的.有什么不明白的,可以发邮件到我的邮箱:108640819@qq.com
TipTec.Developing.Web.Services.with.Apache.CXF.and.Axis2.Jan.2010.rar
配置cxf ws security的教程
geronimo-ws-metadata_2.0_spec-1.1.3.jar h2-1.3.169.jar isorelax-20030108.jar jaxb-api-2.2.6.jar jaxb-impl-2.2.5.jar jaxb-xjc-2.2.5.jar jettison-1.3.2.jar jetty-continuation-7.5.4.v20111024.jar jetty-...
cxf spring maven 实例 webservice
cxf下webservice开发需要的环境,配合ant使用
一个CXF webservice 实例,兼容tomcat和weblogic; 已解决了报错:javax.xml.ws.soap.SOAPFaultException: Cannot create a secure XMLInputFactory
将cxf配置在web.xml中 与applicationContext.xml中声明服务的bean 创建一个maven项目(war) 编写实体类,Service 导入applicationContext.xml 配置cxf的发布 客户端测试代码 WebService-RS ...
Struts+spring集成cxf的ws与rs 实现多样化能力,基于HTTP、SOAP、Action
配置: trial-cxf-server.xml 其中配置了对传入请求的拦截器用以验证调用者身份 验证程序: WsServerAuthHandler. 这里只需要提供调用者应该使用的正确的口令. 是否和调用者实际传入的口令一致,由cxf完成. web.xml ...
使用axis和CXF实现web service的说明文档。
spring 4.2.0 集成的cxf3.1.18的jar包,cxf-core-3.1.18.jar、cxf-rt-bindings-soap-3.1.18.jar、cxf-rt-databinding-jaxb-3.1.18.jar、cxf-rt-frontend-jaxws-3.1.18.jar、cxf-rt-frontend-simple-3.1.18.jar、cxf-...
赠送jar包:cxf-rt-ws-addr-3.0.1.jar; 赠送原API文档:cxf-rt-ws-addr-3.0.1-javadoc.jar; 赠送源代码:cxf-rt-ws-addr-3.0.1-sources.jar; 赠送Maven依赖信息文件:cxf-rt-ws-addr-3.0.1.pom; 包含翻译后的API...