`
gowithbutton
  • 浏览: 42821 次
社区版块
存档分类
最新评论

pjhjava soap的开发

阅读更多

    soap 的开发其实是wsdl到java的一个开发过程。
1, 首先使用axis来生成服务端代码和客户端 代码,  然后再开发实现。那么怎么样生成服务端代码和客户端代码了。看一下这个包你就明白了
. 生成服务器端代码之后把它放在工程中去。   
     这个里面分了几个包,包括message、operation、service、type、util。Message里面放request和response的对象. Operation放一些逻辑操作。主要的业务实现都在这个里面。 Service里面放soap的服务类。Type里面放javabean。 Util里面放一些公共的方法(验证、常量、日志等) 。
注意:deploy.wsdd这个到时候会在部署服务的时候用到
服务器端放好了。 那么客户端怎么放了。其实一样。建一个web 工程。或都java project工程。把客户端代码直接复制放进去。改一下包名。就行了。

2,   如何发布服务了
      服务部署步骤:
1.将axis需要的jar拷贝到应用WEB-INF\lib下
2.配置环境中的R001C01L01301\server\plugins\oms_cm\tomcat-embed\webapps\webpages\WEB-INF\web.xml 中 增加以下代码加载axis框架

      <listener>
           <listener-class>org.apache.axis.transport.http.AxisHTTPSessionListener</listener-class>
      </listener>
<servlet>
           <servlet-name>AxisServlet</servlet-name>
           <display-name>Apache-Axis Servlet</display-name>
            <servlet-class>
                org.apache.axis.transport.http.AxisServlet
            </servlet-class>
       </servlet>
      <servlet-mapping>
    <servlet-name>AxisServlet</servlet-name>
    <url-pattern>/servlet/AxisServlet</url-pattern>
  </servlet-mapping>
  <servlet-mapping>
   <servlet-name>AxisServlet</servlet-name>
    <url-pattern>*.jws</url-pattern>
  </servlet-mapping>
  <servlet-mapping>
    <servlet-name>AxisServlet</servlet-name>
   <url-pattern>/services/*</url-pattern>
</servlet-mapping>
<mime-mapping>   
<extension>wsdl</extension> 
<mime-type>text/xml</mime-type>
</mime-mapping>
<mime-mapping>  
<extension>xsd</extension>  
      <mime-type>text/xml</mime-type>
</mime-mapping>
2.将1所说的 服务端的代码编译后打个包为sms_service.jar , 然后文件拷贝到环境中的
    R001C01L01301\server\plugins\oms_cm\tomcat-embed\webapps\webpages\WEB-INF\lib 或
R001C01L01301\server\plugins\oms_cm\tomcat-embed\webapps\webpages\product\SMS_Product_V300R002.2Db7\SMC_Cluster_V300R002.2Db7\lib
3. 将这个server-config.wsdd(如果没有,请看备注) 放在环境中的R001C01L01301\server\plugins\oms_cm\tomcat-embed\webapps\webpages\WEB-INF下
4。注意:在第一次用的时候,要生成axis服务部署文件 (如果没有部署,请看备注)
5.启动服务器即可。
备注:
以后有问题可以重新部署(从新生成 server-config.wsdd)
1.  配置环境下的\R001C01L01301\server\plugins\oms_cm\config\cm.properties 里面在SERVICE_LIST=US,EAM 后面加 逗号axis;
2.  首先要环境下R001C01L01301\server\plugins\oms_cm\tomcat-embed\webapps下创建一个文件夹(例如axis/WEB-INF) ,将axis需要的jar拷贝到应用WEB-INF\lib下, 创建web.xml 里面内容如上(加载axis框架)
或者直接解压下面的包放在R001C01L01301\server\plugins\oms_cm\tomcat-embed\webapps目录下
 
4.  将工程中的deploy.wsdd文件拷贝到 WEB_INF下
5.  将工程中sms_service.jar  解压后放在环境中  R001C01L01301\server\plugins\oms_cm\tomcat-embed\webapps\axis\WEB-INF\classes下
6.  打开cmd窗口程序进入WEB-INF下 输入以下命令,java -Djava.ext.dirs=lib org.apache.axis.client.AdminClient -p 8080 deploy.wsdd  没有报错,说明部署成功
  7.  最后就是删除axis文件夹 还原cm.properties文件。
在请按以上描述的 服务部署步骤操作。
  注意:部署时服务应该是启动的
server-config.wsdd: 服务部署成功后生成的文件,不改动服务接口的情况下,现在可以直接使用,直接放在WEB-INF下即可。启动服务器。

     如果报错说找不到服务SMSWebService , 再认真仔细的看一下,是不是按照部置步骤做的。除此之外还要看一下,你的客户端代码SMSWebService_ServiceLocator.java 这个类里面SMSWebService_address这个变量的路径有没有写错

3. 简单的说一下代码。服务器端入口在SMSWebServiceBindingImpl.java 。然后调用一些操作的类,实现业务逻辑。 然后你根据soap需求文档和设计文档去看代码。很快就会看明白的.

 
0
0
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics