`
suko
  • 浏览: 72396 次
  • 性别: Icon_minigender_1
  • 来自: 富安
社区版块
存档分类
最新评论

Java Webservice例子

 
阅读更多
1.webservice服务端代码,发布一个webservice应用。
import javax.xml.ws.Endpoint;

public class WebServiceManagerService {
	public static void main(String[] args) {
		System.out.println("web service start");
		OptimizationImpl optimizationImpl = new OptimizationImpl();
		[color=red]String address = "http://127.0.0.1:8080/optimization"[/color];
		Endpoint.publish(address, optimizationImpl);
		System.out.println("web service started");
	}
}


2.webservice客户端调用代码
import org.apache.cxf.endpoint.Client;
import org.apache.cxf.endpoint.dynamic.DynamicClientFactory;

public static void main(String[] args) {
		DynamicClientFactory factory = DynamicClientFactory.newInstance();
		[color=red]String url = "http://127.0.0.1:8080/optimization";[/color]		Client client = factory.createClient(url);
		Object[] result = null;
		try {
			//传递给webservice服务端的数据
			JSONObject json = new JSONObject();
			[color=red]result = client.invoke("optimzationRequest", new Object[] { json.toString() });[/color]		}
		catch (Exception e) {
			e.printStackTrace();
		}
	}


注意:红色的代码段中invoke调用的方法optimzationRequest()就是在下面3中描述的类中的方法optimzationRequest(),它是webservice接口的接入方法,也可以取其他的名字,但是客户端和服务端要保持一致。


3.服务端应用类代码
import javax.jws.WebService;

import net.sf.json.JSONObject;

import com.wondersgroup.adage.optimization.OptimizationServiceImpl;

@WebService(endpointInterface = "com.wondersgroup.adage.webservice.OptimizationI", serviceName = "OptimizationImpl")
public class OptimizationImpl implements OptimizationI {

	private static OptimizationServiceImpl i;

	public OptimizationImpl() {
		if (null == i) {
			i = new OptimizationServiceImpl();
		}
	}

	public String [color=red]optimzationRequest[/color](String jsonStr) {
		i.setProcessorMap();
		JSONObject jsonData = i.optimize(jsonStr);
		return jsonData.toString();
	}

}

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics