【WebService学习过程记录(二)】Java6+Servlet+tomcat发布HelloWord
来源:互联网 发布:c 类成员数组初始化 编辑:程序博客网 时间:2024/05/15 23:46
学习网址:Java6 WebService的发布 ; java 调用webservice的各种方法总结
模仿实例,遇见问题记录
1、eclipse建立Dynamic Web Project项目2、编写webService服务package lavasoft.server;import javax.jws.WebService;/*** Java开发的WebService服务端*/@WebServicepublic class JavaWebService { /** * Web服务中的业务方法 * @return 一个字符串 */ public String doSomething(String username) { return username + " hello!"; } public String doHello() { return "XFire hello!"; } }3、开发发布服务的Servlet,为了通用性,最好选择GenericServlet来继承
package lavasoft.servlet;import lavasoft.server.JavaWebService;import javax.servlet.*;import javax.xml.ws.Endpoint;import java.io.IOException;/*** 发布Java WebService的Servlet*/public class WSServlet extends GenericServlet {private static final long serialVersionUID = 1L;@Override public void init(ServletConfig servletConfig) throws ServletException { super.init(servletConfig); System.out.println("准备启动WebService服务"); //发布一个WebService Endpoint.publish("http://localhost:8888/javaws/JavaWebService", new JavaWebService()); System.out.println("已成功启动WebService服务"); } public void service(ServletRequest servletRequest, ServletResponse servletResponse) throws ServletException, IOException { System.out.println("此Servlet不处理任何业务逻辑,仅仅用来发布一个Web服务"); }}4、配置web.xml
<?xml version="1.0" encoding="UTF-8"?><web-app xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" version="2.5"> <welcome-file-list> <welcome-file>index.jsp</welcome-file> </welcome-file-list> <servlet> <servlet-name>WSServlet</servlet-name> <servlet-class>lavasoft.servlet.WSServlet</servlet-class> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>WSServlet</servlet-name> <url-pattern>/servlet/WSServlet</url-pattern> </servlet-mapping></web-app>
注意:
<load-on-startup>1</load-on-startup>,这样写的目的是Servlet能伴随容器的启动在第一时间加载。以便服务能尽可能早的发布,否则,只有在第一次请求该Servlet的时候,才会被加载到容器。
web.xml配置与java文件所在包要一致
发布端口与tomcat端口最好不要重复
5、初始页index.jsp
6、启动Tocmat浏览器中输入:http://localhost/JavaWebService/ 成功访问即可<load-on-startup>1</load-on-startup>,这样写的目的是Servlet能伴随容器的启动在第一时间加载。以便服务能尽可能早的发布,否则,只有在第一次请求该Servlet的时候,才会被加载到容器。
web.xml配置与java文件所在包要一致
发布端口与tomcat端口最好不要重复
5、初始页index.jsp
<%@ page language="java" contentType="text/html; charset=utf-8"%><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html> <head> <title>展示</title> </head> <body> <div> <h1>这是一个测试java WebService发布服务的例子</h1> <a href="http://localhost:8888/javaws/JavaWebService">点此处访问WSDL</a> </div> </body></html>
(我的tomcat没有端口)
7、客户端调用建立一个简单的空项目,一个类
import java.net.URL;import org.codehaus.xfire.client.Client;public class XFireTest {public static void main(String[] args) {try {Client c = new Client(new URL("http://localhost:8888/javaws/JavaWebService?wsdl"));Object[] results = c.invoke("doHello", new Object[0]);System.out.println(results.length);for (Object one : results) {System.out.println("1 结果是:" + one);}} catch (Exception e) {e.printStackTrace();}}}运行看是否可以成功访问? 成功即可
问题记录:
访问时的传参我还有点问题,没有运行成功
上一篇:【WebService学习过程记录】照猫画虎---运行示例(一)
- 【WebService学习过程记录(二)】Java6+Servlet+tomcat发布HelloWord
- 【WebService学习过程记录(二)】Java6+Servlet+tomcat发布HelloWord
- 【WebService学习过程记录(二)】Java6+Servlet+tomcat发布HelloWord
- Java6+Servlet+tomcat发布HelloWord
- 【WebService学习过程记录(三)】XFire开发Web Service---HelloWord
- 【WebService学习过程记录(三)】XFire开发Web Service---HelloWord
- webservice 发布过程 tomcat
- Java6 WebService的发布
- java6 发布WebService
- java6发布webservice
- Java6 WebService的发布
- java6发布webservice的例子
- JAVA6学习webservice
- 学习Java6(一) WebServices (3)在tomcat中发布
- 学习Java6(一) WebServices (3)在tomcat中发布
- 我的servlet学习过程(二):tomcat服务器部分
- java_web 学习记录(二):servlet
- webService学习(三)webService发布到tomcat
- 算法系列之六:最长公共子序列(LCS)问题(连续子序列)的三种解法 .
- mongodb数据的导出和远程导入
- LA4490
- poj2196
- Keepalived原理与实战精讲
- 【WebService学习过程记录(二)】Java6+Servlet+tomcat发布HelloWord
- IGraphBuilder interface 2010-10-27 17:11
- 算法系列之七:爱因斯坦的思考题(上) .
- 笔记:OpenCV操作XML存储数据
- Selenium 使用介绍
- 关于域名解析需要掌握的知识
- js_baidumap_页面上添加节点,并将这些节点连成线路,查询线路信息
- 买马桶哪个牌子的最好?
- 解决get方式传递中文乱码的问题