<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>webservice &#8211; 天地一沙鸥</title>
	<atom:link href="https://haoluobo.com/tag/webservice/feed/" rel="self" type="application/rss+xml" />
	<link>https://haoluobo.com</link>
	<description>to be continue....</description>
	<lastBuildDate>Tue, 02 Feb 2010 06:36:31 +0000</lastBuildDate>
	<language>zh-Hans</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.8.2</generator>
	<item>
		<title>使用嵌入式jetty启动axis提供webservice服务</title>
		<link>https://haoluobo.com/2010/02/%e4%bd%bf%e7%94%a8%e5%b5%8c%e5%85%a5%e5%bc%8fjetty%e5%90%af%e5%8a%a8axis%e6%8f%90%e4%be%9bwebservice%e6%9c%8d%e5%8a%a1/</link>
		
		<dc:creator><![CDATA[vicalloy]]></dc:creator>
		<pubDate>Tue, 02 Feb 2010 06:36:31 +0000</pubDate>
				<category><![CDATA[编程]]></category>
		<category><![CDATA[axis]]></category>
		<category><![CDATA[java]]></category>
		<category><![CDATA[webservice]]></category>
		<guid isPermaLink="false">/?p=10054</guid>

					<description><![CDATA[JDK6已经内置了webservice支持，使用JDK6开发webservice是一件很方便的事。很不幸的是， [&#8230;]]]></description>
										<content:encoded><![CDATA[<p>JDK6已经内置了webservice支持，使用JDK6开发webservice是一件很方便的事。很不幸的是，由于IDE的支持axis成为使用最广的java webservice库。而且由于的部分应用使用了不兼容的RPC/encoded模式，使得你还不得不用axis。</p>
<p>通常情况下用axis开发webservice服务端，需要挂在tomcat等web服务器下，以servlet的方式提供服务。但有些时候我会想将接口部分以一个单独应用程序的方式进行发布，另外再多带个web服务器似乎有些笨拙。</p>
<p>使用嵌入式的jetty是一个比较简单的解决方式。其中需要注意的是，一定要设置Context的ResourceBase，不然是无法找到webservice配置文件的。我当初就是想当然的认为jetty会默认在当前路径下查找配置文件，导致一直无法正确发布服务。</p>
<pre lang="java">protected static void runJetty() throws Exception {
    Server server = new Server();
    SocketConnector connector = new SocketConnector();
    connector.setMaxIdleTime(30000);
    connector.setPort(8000);//jetty的端口
    server.addConnector(connector);
    ServletHolder axisServletholder = new ServletHolder(new AxisServlet());
    ServletHolder axisAdminServletholder = new ServletHolder(new AdminServlet());
    Context root = new Context(server, "/", Context.SESSIONS);
    root.setResourceBase("./web/");//WEB资源目录，./web/WEB-INF/server-config.wsdd
    root.addServlet(axisServletholder, "/servlet/AxisServlet");
    root.addServlet(axisServletholder, "/ws/*");//设置webservice的发布目录
    root.addServlet(axisServletholder, "*.jws");
    root.addServlet(axisAdminServletholder, "/servlet/AdminServlet");
    server.start();
}
</pre>
]]></content:encoded>
					
		
		
			</item>
	</channel>
</rss>
