webService接口设计问题 描述:一个学习平台study 地址192.168.1.100:8080/study ,一个管理平台manager 地址192.168.1.101:8080/manager。现在我想通过定时器将study平台今天的用户登录统计提交到管理平台,在这两个平台间要做一个webservice接口,但是对于webservice接口这块不太熟悉,我想知道的是学习平台怎么把数据同步到管理平台,求指点!!!!!! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 按照你的描述, manager 是服务端,需要开出接口,提供给学习平台调用 ;一般构建webservice现在都用CXF 。不知道你们的架构用spring没,用的话下面的代码就OK 了。。manager端的接口类:@WebService(name = "IHelloWord", targetNamespace = "http://helloword.hong.com/")@XmlAccessorType(XmlAccessType.FIELD)public interface IHelloWordWebService { @WebMethod(operationName = "sayHelloWord", action = "") @WebResult(name = "return", targetNamespace = "") String sayHelloWord(@WebParam(name = "name", targetNamespace = "")String name );}manager端的接口实现类:public class HelloWordWebServiceImpl implements IHelloWordWebService{ @Override public String sayHelloWord(String name) { return name + "说:世界你好~打到小日本。"; }}manager端 开出接口服务(spring配置):<bean id="helloWordWebService" class="com.hong.webservice.helloword.impl.HelloWordWebServiceImpl"/> <jaxws:endpoint id="helloWordWs" implementor="#helloWordWebService" address="/helloWordWs" /> 客户端 学习平台调用:spring配置: <!-- helloword --> <bean id="helloWordWebService" class="com.hong.webservice.helloword.IHelloWord" factory-bean="helloWordWebServiceFactory" factory-method="create" scope="singleton"/> <bean id="helloWordWebServiceFactory" class="org.apache.cxf.jaxws.JaxWsProxyFactoryBean"> <property name="serviceClass" value="com.hong.webservice.helloword.IHelloWord" /> <property name="address" value="http://localhost:8080/TestWebService/services/helloWordWs" /> </bean>同样的客户端也要用个接口类于服务端匹配:@WebService(name = "IHelloWord", targetNamespace = "http://helloword.hong.com/")@XmlAccessorType(XmlAccessType.FIELD)public interface IHelloWord { public String sayHelloWord(String name) ; }客户端接口实现累:public class HelloWord implements IHelloWord { @Override public String sayHelloWord(String name) { ApplicationContext context = new ClassPathXmlApplicationContext("applicationContext-cxf-client.xml"); IHelloWord helloWordBean = (IHelloWord)context.getBean("helloWordWebService"); return helloWordBean.sayHelloWord(name);//调用 服务端提供的接口方法 } public static void main(String[] args) { HelloWord helloword = new HelloWord(); System.out.println(helloword.sayHelloWord("小红")); }}配置搭建完毕!!!!!其实很简单的,,,, 实在不会我给你例子,,CXF集成sping的。 具体实现原理就需要你自己研究了,,SAOP WSDL之类的协议 规则 要例子联系哥们。。[email protected] ,, 顶下,是这么个意思,在manager端开发一个webservice服务端给study用,study针对这个wsdl生成一个客户端调用就行了,我们一般都是CXF开发的webservice Lucence索引创建 [待改进] strust2中怎样取出session中的对象 XYChart 中文乱码问题 急求一个博客项目 用hibernate3,出了以下問題,請大蝦幫忙, tomcat5.5配置连接池的问题 急!关于Struts 树的问题?谢谢了 关于在struts框架中传递变量值的问题(从jsp页面传到Action类中) struts连接数据库 javaBean怎么调用linux下的so组件? MyEclipse 8.5开发时的提示快捷键是什么啊 关于sqlserver中时间类型的问题!
一般构建webservice现在都用CXF 。
不知道你们的架构用spring没,用的话下面的代码就OK 了。。
manager端的接口类:@WebService(name = "IHelloWord", targetNamespace = "http://helloword.hong.com/")
@XmlAccessorType(XmlAccessType.FIELD)
public interface IHelloWordWebService {
@WebMethod(operationName = "sayHelloWord", action = "")
@WebResult(name = "return", targetNamespace = "")
String sayHelloWord(@WebParam(name = "name", targetNamespace = "")String name );
}manager端的接口实现类:public class HelloWordWebServiceImpl implements IHelloWordWebService{ @Override
public String sayHelloWord(String name) {
return name + "说:世界你好~打到小日本。";
}}manager端 开出接口服务(spring配置):<bean id="helloWordWebService" class="com.hong.webservice.helloword.impl.HelloWordWebServiceImpl"/>
<jaxws:endpoint id="helloWordWs" implementor="#helloWordWebService" address="/helloWordWs" />
客户端 学习平台调用:
spring配置: <!-- helloword -->
<bean id="helloWordWebService" class="com.hong.webservice.helloword.IHelloWord"
factory-bean="helloWordWebServiceFactory" factory-method="create" scope="singleton"/>
<bean id="helloWordWebServiceFactory" class="org.apache.cxf.jaxws.JaxWsProxyFactoryBean">
<property name="serviceClass" value="com.hong.webservice.helloword.IHelloWord" />
<property name="address" value="http://localhost:8080/TestWebService/services/helloWordWs" />
</bean>
同样的客户端也要用个接口类于服务端匹配:@WebService(name = "IHelloWord", targetNamespace = "http://helloword.hong.com/")
@XmlAccessorType(XmlAccessType.FIELD)
public interface IHelloWord {
public String sayHelloWord(String name) ;
}
客户端接口实现累:public class HelloWord implements IHelloWord { @Override
public String sayHelloWord(String name) {
ApplicationContext context = new ClassPathXmlApplicationContext("applicationContext-cxf-client.xml");
IHelloWord helloWordBean = (IHelloWord)context.getBean("helloWordWebService");
return helloWordBean.sayHelloWord(name);//调用 服务端提供的接口方法
}
public static void main(String[] args) {
HelloWord helloword = new HelloWord();
System.out.println(helloword.sayHelloWord("小红"));
}
}
配置搭建完毕!!!!!其实很简单的,,,, 实在不会我给你例子,,CXF集成sping的。 具体实现原理就需要你自己研究了,,SAOP WSDL之类的协议 规则