最近用之前前面的文章写了个webservice,但是这个在tomcat服务下运行时正常的,到weblogic下运行就不行了,原因是我对weblogic下的webservice不了解,所以相同的程序在weblogic下估计是有冲突的。
经过我的反复测试,使用webservice的方式有很多,如xfire,cxf,注解的webservice(也就是我前面文章中提到的)。能在weblogic下使用的只有xfire-1.2.6才行。
具体操作如下:
1.写一个服务端接口和实现类,供给客户端调用。结合spring对属性进行依赖注入。并在属性的getter和setter头上加@WebMethod(exclude = true)注解。
2.配置spring的配置文件(spring与xfire结合):
<!--Xfire的配置开始 -->
<import resource="classpath:org/codehaus/xfire/spring/xfire.xml" />
<bean id="tyglServie" name="/tyglServie" class="org.codehaus.xfire.spring.remoting.XFireExporter">
<property name="serviceFactory">
<ref bean="xfire.serviceFactory" />
</property>
<property name="xfire">
<ref bean="xfire" />
</property>
<property name="serviceBean" ref="doDataExceptServiceImpl" /> <!--这里是配置的接口的实现类 doDataExceptServiceImpl指向spring配置的bean -->
<property name="serviceClass">
<value>com.data.syn.service.DoDataExceptService</value> <!--这里配置的是接口 包名+类名-->
</property>
</bean>
<!--Xfire的配置结束 -->
3.启动webservice,在启动程序后,访问:http://主机:端口/项目名/services/接口名称,例如:http://168.7.7.232:7003/FPJSFW/services/DoDataExceptService