锘??xml version="1.0" encoding="utf-8" standalone="yes"?> package common; import javax.xml.namespace.QName; public class WebServiceUtils // ----------------------------------------------------- Constructors // ----------------------------------------------------- Methods public static OMElement getEchoOMElement() { return method; public static void main(String[] args) { //Blocking invocation System.out.println(result); } catch (AxisFault axisFault) { 鍒╃敤鎻掍歡鐢熸垚瀹㈡埛绔?br />
private static String URL="http://localhost:8080/axis2/services/WeatherService";
import org.apache.axis2.AxisFault;
import org.apache.axis2.addressing.EndpointReference;
import org.apache.axis2.client.Options;
import org.apache.axis2.rpc.client.RPCServiceClient;
{
// ----------------------------------------------------- Properties
public static int TIMEOUT = 100000;
/**
*
* 璋冪敤axis2鐨剋ebservice鐨勬柟娉?br />
*
* @return
*/
@SuppressWarnings("unchecked")
static public Object[] invokeWebService( String url, String nameSpace, String method, Object[] args, Class[] returnTypes )
throws AxisFault
{
RPCServiceClient serviceClient = new RPCServiceClient();
Options options = serviceClient.getOptions();
EndpointReference targetEPR = new EndpointReference( url );
options.setTo( targetEPR );
options.setTimeOutInMilliSeconds( TIMEOUT );
QName opName = new QName( nameSpace, method );
Object[] results = serviceClient.invokeBlocking( opName, args, returnTypes );
return results;
}
}
絎簩錛?
OMFactory fac = OMAbstractFactory.getOMFactory();
OMNamespace omNs = fac.createOMNamespace(
"http://example1.org/example1", "example1");
OMElement method = fac.createOMElement("echo", omNs);
OMElement value = fac.createOMElement("Text", omNs);
value.addChild(fac.createOMText(value, "Axis2 Echo String "));
method.addChild(value);
}
try {
OMElement payload = ClientUtil.getEchoOMElement();
Options options = new Options();
options.setTo(targetEPR);
options.setAction("urn:echo");
ServiceClient sender = new ServiceClient();
sender.setOptions(options);
OMElement result = sender.sendReceive(payload);
System.out.println(options.getTo());
axisFault.printStackTrace();
}
}
絎笁錛?br />
public static void main(String[] args) throws RemoteException {
try {
WeatherServiceStub stub;
if (args != null && args.length != 0) {
stub = new WeatherServiceStub(args[0]);
} else {
stub = new WeatherServiceStub(URL);
}
WeatherServiceStub.SetWeather setWether = new WeatherServiceStub.SetWeather();
WeatherServiceStub.Weather wether = new WeatherServiceStub.Weather();
wether.setForecast("east");
wether.setRain(true);
wether.setTemperature(12.3f);
wether.setForecast("big");
setWether.setWeather(wether);
stub.setWeather(setWether);
WeatherServiceStub.GetWeatherResponse gw = new WeatherServiceStub.GetWeatherResponse();
System.out.println(gw.get_return());
} catch (AxisFault e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
鏈枃閮ㄥ垎鏉ヨ嚜CSDN鍗氬錛岃漿杞借鏍囨槑鍑哄錛?a >http://blog.csdn.net/yhhah/archive/2009/05/07/4158487.aspx
]]>
瀹為檯寮鍙戜腑閮介渶瑕佸紑鍙戜竴浜涘緢鏈夌敤鐨勮繃婊ゅ櫒錛屾潵瑙e喅涓枃琛ㄥ崟鎻愪氦闂鍟婏紝緇欒姹傚拰鍝?/span>
搴斿姞鍏?/span> GZIP鍘嬬緝鍔熻兘鍟婏紝鐢ㄦ埛鏉冮檺鎺у埗鍟婏紝絳夌瓑錛岀劧鑰岄仐鎲劇殑 MyEclipse涓嶆敮鎸佺洿鎺ュ垱寤?/span>
榪囨護鍣ㄣ傚湪榪欓噷鍙ソ鎵嬪伐鍒涘緩涓涓В鍐?/span> Tomcat琛ㄥ崟鎻愪氦涓枃闂鐨勮繃婊ゅ櫒銆?/span>
閫夋嫨鑿滃崟 File > New > Class錛屾潵鍒涘緩涓涓悕涓?/span> TomcatFormFilter 鐨勭被錛屽寘鍚嶄負
filters銆傜劧鍚庢妸綾葷殑浠g爜淇敼涓哄涓嬫墍紺猴細
package filters;
import java.io.IOException;
import javax.servlet.Filter;
import javax.servlet.FilterChain;
import javax.servlet.FilterConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletRequestWrapper;
public class TomcatFormFilter implements Filter {
/**
* Request.java
* 瀵?/span> HttpServletRequestWrapper 榪涜鎵╁厖, 涓嶅獎鍝嶅師鏉ョ殑鍔熻兘騫惰兘鎻愪緵鎵
鏈夌殑 HttpServletRequest
* 鎺ュ彛涓殑鍔熻兘. 瀹冨彲浠ョ粺涓鐨勫 Tomcat 榛樿璁劇疆涓嬬殑涓枃闂榪涜瑙e喅鑰屽彧
闇瑕佺敤鏂扮殑 Request 瀵硅薄鏇挎崲欏甸潰涓殑
* request 瀵硅薄鍗沖彲.
*/
class Request extends HttpServletRequestWrapper
{
public Request(HttpServletRequest request) {
super(request);
}
/**
* 杞崲鐢辮〃鍗曡鍙栫殑鏁版嵁鐨勫唴鐮?/span>.
* 浠?/span> ISO 瀛楃杞埌 GBK.
*/
public String toChi(String input) {
try {
byte[] bytes = input.getBytes("ISO8859-1");
return new String(bytes, "GBK");
}
catch (Exception ex) {
}
return null;
}
/**
* Return the HttpServletRequest holded by this object.
*/
private HttpServletRequest getHttpServletRequest()
{
return (HttpServletRequest)super.getRequest();
}
/**
* 璇誨彇鍙傛暟 -- 淇浜嗕腑鏂囬棶棰?/span>.
*/
public String getParameter(String name)
{
return
toChi(getHttpServletRequest().getParameter(name));
}
/**
* 璇誨彇鍙傛暟鍒楄〃 - 淇浜嗕腑鏂囬棶棰?/span>.
*/
public String[] getParameterValues(String name)
{
String values[] =
getHttpServletRequest().getParameterValues(name);
if (values != null) {
for (int i = 0; i < values.length; i++) {
values[i] = toChi(values[i]);
}
}
return values;
}
}
public void destroy() {
}
public void doFilter(ServletRequest request, ServletResponse
response,
FilterChain chain) throws IOException, ServletException {
HttpServletRequest httpreq = (HttpServletRequest)request;
if(httpreq.getMethod().equals("POST")) {
request.setCharacterEncoding("GBK");
} else {
request = new Request(httpreq);
}
chain.doFilter(request, response);
}
public void init(FilterConfig filterConfig) throws
ServletException {
}
}
娓呭崟 8.5 榪囨護鍣ㄤ唬鐮?/span>
鐒跺悗淇敼 web.xml 鍔犲叆 Servlet 瀹氫箟錛屼慨鏀瑰悗鐨勪唬鐮佹竻鍗曞涓嬫墍紺猴細
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5" 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">
<servlet>
<description>
This is the description of my J2EE component
</description>
<display-name>
This is the display name of my J2EE component
</display-name>
<servlet-name>LoginServlet</servlet-name>
<servlet-class>servlets.LoginServlet</servlet-class>
</servlet>
<filter>
<filter-name>TomcatFormFilter</filter-name>
<filter-class>filters.TomcatFormFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>TomcatFormFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<servlet-mapping>
<servlet-name>LoginServlet</servlet-name>
<url-pattern>/login.aspx</url-pattern>
</servlet-mapping>
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
</web-app>
娓呭崟 8.6鍔犲叆浜嗚繃婊ゅ櫒鐨?/span> web.xml 鍐呭
娓呭崟涓殑綺楁枩浣撻儴鍒嗗氨鏄柊鍔犲叆鐨勮繃婊ゅ櫒鐨勬槧灝勪俊鎭?/span>