知识大全 在JBoss4.2及JBoss5.0上部署jax-ws 2.0/2.1 Web
Posted 知
篇首语:最是人间留不住,朱颜辞镜花辞树。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 在JBoss4.2及JBoss5.0上部署jax-ws 2.0/2.1 Web相关的知识,希望对你有一定的参考价值。
在JBoss4.2及JBoss5.0上部署jax-ws 2.0/2.1 Web 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!
最近试着将POJO web service打包成war部署到JBoss上(同样的war部署在Glassfish上运行良好) 下面是小结
一 部署jax ws / POJO Web Service到JBoss GA
必须为你的POJO Web Service定义一个Servlet 并定义service的endpoint 这意味着必须修改/增加两个文件 WEB INF/web xml WEB INF/sun jaxws xml (附文后)
最好将所需的jax ws jars放到WEN INF/lib里 免得将这些jar拷贝来拷贝去 本人曾试了半天 拷来拷去 反正是搞不定 最后还是一古脑儿索性全放到WEB INF/lib里 倒是爽快:
WEB INF/lib/jaxws rt jarWEB INF/lib/jaxws tools jarWEB INF/lib/log j jarWEB INF/lib/saaj api jarWEB INF/lib/saaj impl jarWEB INF/lib/sjsxp jarWEB INF/lib/stax ex jarWEB INF/lib/streambuffer jarWEB INF/lib/sxalan jar
别问我到底哪个是哪个 都是干什么的
二 部署jax ws / POJO Web Service到JBoss GA
好像是去年 JBoss 面世了 根据其Release Note 它是 the final release of the JBoss series for the Java EE&# ; codebase that fully plies with the Java EE conformance testing certification requirements 但本人的试验结果却是大失所望 如果将我们的web service打包成war部署到JBoss 上 根本就不工作 问题多去了 为什么同样的war部署在Glassfish上就运行良好呢?果真是 fully plies with the Java EE ?看起来并不那么 fully
JBoss GA的server classloader搜寻路径发生了一点变化 根据其Release Note的 指示 : When running under Java you need to manually copy the following libraries from the JBOSS_HOME/client directory to the JBOSS_HOME/lib/endorsed directory so that the JAX WS apis supported by JBossWS are used:
jbossws native saaj jar jbossws native jaxrpc jar jbossws native jaxws jar jbossws native jaxws ext jar
这个也无济于事
最终 还得像部署在JBoss GA上一样进行部署
总结 1 将jax ws / POJO web service部署得到JBoss / 是一样费劲的 2 基本上需要两步 一是要定义WEB INF/web xml 和 WEB INF/sun jaxws xml 二是要将所需的相关的 ws libs 放到war的本地classpath上 3 还发现一个怪现象 @WebService attribute 是否附值与附哪些值 JBoss与 Glassfish所由此产生的wsdl内容很不相同 这有点儿头痛
Why JBoss then? 答案是我儿子的口头禅 我也不知道!
附上相关文件
code
service interface: VodOptService package vodws service opt;import javax jws WebMethod;import javax jws WebParam;import javax jws WebResult;import javax jws WebService;import javax jws soap SOAPBinding;import vodws service GetPersonRequest;import vodws service GetPersonResponse;@WebService@SOAPBinding( style = SOAPBinding Style DOCUMENT use = SOAPBinding Use LITERAL parameterStyle=SOAPBinding ParameterStyle BARE)public interface VodOptService @WebMethod @WebResult( name= getPersonResponse targetNamespace= partName= getPersonResponse ) public GetPersonResponse getPerson( @WebParam(name= getPersonRequest targetNamespace= partName= getPersonRequest ) GetPersonRequest request); service implementation: VodOptServiceImp
package vodws service opt;import java util ArrayList;import javax jws WebService;import apache log j Logger;import vodws service GetPersonRequest;import vodws service GetPersonResponse;import vodws service Person;import vodws service ServiceResponse ServiceMessage;@WebService(serviceName= optsvs endpointInterface= vodws service opt VodOptService )public class VodOptServiceImp implements VodOptService private static final Logger log = Logger getLogger(VodOptServiceImp class); private static final String MSISDN = ; public GetPersonResponse getPerson(GetPersonRequest request) GetPersonResponse response = new GetPersonResponse(); if(request == null) log error( john service request is null ); ServiceMessage Message msg = new ServiceMessage Message(); msg setContent( Sorry request is null ); msg setLevel( ERROR ); ArrayList<ServiceMessage Message> msglist = new ArrayList<ServiceMessage Message>(); msglist add(msg); ServiceMessage error = new ServiceMessage(); error getMessages() addAll(msglist); response setServiceMessage(error); return response; String msisdn = request getMsisdn(); log debug( Getting person for msisdn: + msisdn); Person person = new Person(); person setFirstName( jason ); person setLastName( wang ); person setMsisdn(MSISDN); response setPerson(person); return response;
WEB INF/web xml <?xml version= encoding= UTF ?><! servlet jsp ><web app xmlns:xsi= instance xmlns= xmlns:web= app_ _ xsd xsi:schemaLocation= ; app_ _ xsd id= WebApp_ID version= > <display name>vodws</display name> <description>vodws</description> <! jwang : necessary if deploying to JBoss x not required for Glassfish > <listener> <listener class> sun xml ws transport </listener class> </listener> <servlet> <description>vod opt web service</description> <display name>vod opt web service</display name> <servlet name>VodOptService</servlet name> <servlet class> sun xml ws transport ;/servlet class> <load on startup> </load on startup> </servlet> <servlet mapping> <servlet name>VodOptService</servlet name> <url pattern>/optsvs</url pattern> </servlet mapping> <! othe web xml content ></web app> WEB INF/sun jaxws xml <?xml version= encoding= UTF ?><! jwang : this file is required if deploying to JBoss x not required for Glassfish ><endpoints xmlns= ws/ri/runtime version= > <endpoint name= VodOptService implementation= vodws service opt VodOptServiceImp service= VodOptService port= VodOptService url pattern= /optsvs /></endpoints>
code cha138/Article/program/Java/ky/201311/28616相关参考
在AIX5L上快速部署Oracle 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 环境准备
美国海军计划今年夏天在一艘现役军舰上部署并测试首个__激光武器系统,并将于两年内测试一种舰载电磁轨道炮。舆论认为
美国海军计划今年夏天在一艘现役军舰上部署并测试首个_____激光武器系统,并将于两年内测试一种舰载电磁轨道炮。舆论认为,这将从根本上改变美国海军的作战方式。A、气态B、液态C、固态D、混合体答案:C
知识大全 OPENBSD-3.8上快速部署apache+mysql+php+ssl[3]
OPENBSD-3.8上快速部署apache+mysql+php+ssl[3] 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,
知识大全 OPENBSD-3.8上快速部署apache+mysql+php+ssl[2]
OPENBSD-3.8上快速部署apache+mysql+php+ssl[2] 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,
知识大全 OPENBSD-3.8上快速部署apache+mysql+php+ssl[1]
OPENBSD-3.8上快速部署apache+mysql+php+ssl[1] 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,
在Tomcat中部署JavaWeb应用程序有两种方式静态部署和动态部署在下文中$CATALINA_HOME指的是Tomcat根目录 一静态部署 静态部署指的是我们在服务器启动之前部署我们的程序
假如该公文中有“鉴于当前的洪灾形势,县委县政府特转发A市人民政府办公室关于抗洪抢险的指示,兼之部署本县各乡镇抗洪任务及灾
假如该公文中有“鉴于当前的洪灾形势,县委县政府特转发A市人民政府办公室关于抗洪抢险的指示,兼之部署本县各乡镇抗洪任务及灾后生产生活具体工作”一句,其中用词妥当的一项是_____。A、鉴于B、县委县政府
公安部部署,自8月15日起,在全国开展为期两个月的严厉整治酒后驾驶交通违法行为专项行动。10月,公安部再次部署,继续严厉
公安部部署,自8月15日起,在全国开展为期两个月的严厉整治酒后驾驶交通违法行为专项行动。10月,公安部再次部署,继续严厉整治酒后驾驶交通违法行为。各地交管部门针对高发区域和高发时段,高密度部署勤务,提
为研究和完善国家法定节假日制度,国家有关部门按照国务院的部署,通过有关网站进行问卷调查,并在部分城市进行了电话调查。在广
为研究和完善国家法定节假日制度,国家有关部门按照国务院的部署,通过有关网站进行问卷调查,并在部分城市进行了电话调查。在广泛进行民意调查的基础上,经过一年多的研究论证,确定了新的节假日调整方案,这体现了
知识大全 在PowerBuilder11中部署SmartClient应用[3]
在PowerBuilder11中部署SmartClient应用[3] 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快