一、src->META-INFF->xfire->service.xml
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://xfire.codehaus.org/config/1.0">
<service>
<!-- 服务名称,客户端调用时需要这个 -->
<name>IntelligentTerminal</name>
<!-- 接口类 -->
<serviceClass>com.sdjz.xfireservice.service.IntelligentTerminalService</serviceClass>
<!-- 实现类 -->
<implementationClass>com.sdjz.xfireservice.service.impl.IntelligentTerminalServiceImpl</implementationClass>
</service>
</beans>
二、web.xml
<!-- 智能终端xfire服务端 start-->
<servlet>
<servlet-name>XFireServlet</servlet-name>
<servlet-class>
org.codehaus.xfire.transport.http.XFireConfigurableServlet
</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>XFireServlet</servlet-name>
<url-pattern>/xfireservice/*</url-pattern>
</servlet-mapping>
<!-- 职能终端xfire服务端 end-->
三、接口及实现
public interface IntelligentTerminalService {
public String getShenbaoInfo(String code,String sign);
public String getShenbaoForm(String condition,String sign);
public String updateReportPrint(String id,String sign);
}public class IntelligentTerminalServiceImpl implements IntelligentTerminalService{
@Override
public String getShenbaoInfo(String code,String sign) {
try {
return JSON.toJSONString(map);
} catch (Exception e) {
return StrUtils.setErrorMsg("NOUPDATE-查询数据错误");
}
}
}
四、接口调用
package com.sdjz.xfireservice;
import java.io.UnsupportedEncodingException;
import java.net.MalformedURLException;
import java.net.URL;
import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;
public class Client {
private static final String userID = "admin.android.sx";
private static final String mykey = "B9C507A7F165C71DC6706";
public static void main(String args[]) throws MalformedURLException {
/*try {
URL endpoint = new URL("http://10.1.32.93:8080/sdjy/xfireservice/IntelligentTerminal");
IntelligentTerminalLocator seWebServiceLocator = new IntelligentTerminalLocator();
IntelligentTerminalPortType seWebServiceHttpPort = seWebServiceLocator.getIntelligentTerminalHttpPort(endpoint);
String code="20141110015";
StringBuilder valueStr = new StringBuilder("userID=");
valueStr.append(userID);
valueStr.append("&code=").append(code.trim());
valueStr.append("&key=").append(mykey);
String sign = enCodeMd5(valueStr.toString().toLowerCase()).toUpperCase();
String str = seWebServiceHttpPort.getShenbaoInfo(code, sign);
System.out.println(str);
}catch (Exception e) {
} */
}
public static String enCodeMd5(String srcStr) {
String res = "";
try {
MessageDigest md5 = MessageDigest.getInstance("MD5");
md5.update(srcStr.getBytes("UTF-8"));
byte[] m = md5.digest();//加密
StringBuffer buf = new StringBuffer();
for (int i = 0; i < m.length; i++) {
int x = m[i] & 0xff;
if (x < 0xf) {
buf.append("0");
}
buf.append(Integer.toHexString(x));
}
res = buf.toString();
} catch (NoSuchAlgorithmException e) {
e.printStackTrace();
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
}
return res;
}}