import java.io.IOException;
import java.util.ArrayList;
import java.util.Properties;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.xml.rpc.ServiceException;
import net.sf.json.JSONArray;
import net.sf.json.JSONObject;
import org.apache.axis.client.Call;
import org.apache.axis.client.Service;
import com.neusoft.model.User;
public class AccountInfoServlet extends HttpServlet {
private static final long serialVersionUID = 684636450572611028L;
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
String endpoint = null;
String port = null;
try {
Properties conf = new Properties();
conf.load(AccountInfoServlet.class
.getResourceAsStream("../webservice.conf"));
port = conf.getProperty("port1");
endpoint = port + conf.getProperty("boss_endpoint");
} catch (Exception e) {
request.setAttribute("connecterror", "连接错误,请重试。");
request.getRequestDispatcher("/user/none.jsp").forward(request,
response);
return;
}
Service service = new Service();
Call call = null;
try {
call = (Call) service.createCall();
} catch (ServiceException e) {
e.printStackTrace();
}
// 设置入口
call.setTargetEndpointAddress(new java.net.URL(endpoint));
// 方法名
call.setOperationName("getAccountInfo");
User user = (User) request.getSession()
.getAttribute("usersuccesslogin");
// 输入参数
Object[] para = new Object[] { user.getBusinessid() };
// 调用服务
Object res = null;
try {
res = (Object) call.invoke(new Object[] { para });
} catch (Exception e) {
request.setAttribute("none", "你还没有账户信息。");
request.getRequestDispatcher("/user/none.jsp").forward(request,
response);
return;
}
// 生成JSON数组
JSONArray jsonArray = JSONArray.fromObject(res);
//
JSONObject json = null;
ArrayList<AccountInfo> list = new ArrayList<AccountInfo>();
for (int i = 0; i < jsonArray.size(); i++) {
// 取得JSON对象
json = jsonArray.getJSONObject(i);
AccountInfo accountinfo = (AccountInfo) JSONObject.toBean(json,
AccountInfo.class);
list.add(accountinfo);
request.getSession().setAttribute("accountinfo", accountinfo);
request.getSession().setAttribute("list", list);
// 输出JSON对象
System.out.println(json.toString());
}
request.getRequestDispatcher("/user/accountinfo.jsp").forward(request,
response);
}
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
this.doGet(request, response);
}
}