NC中配置Servlet 调用NC服务
2015-10-22 18:53
162 查看
1.新建Servlet类(这个类中有实现调用接口的方法以及设置Token)路径没有要求,应该新建Servlet本来就不是规范。
2.在account.portal.part中配置Servlet(注意使用一下LFW工具--->同步所有元素--->重启NC服务)
3.通过网页请求访问
4.简单的结果演示(CoverPlanServlet2只是我方便说明问题,不是上面的CoverPlanServlet)
5.第三方网页通过ajax请求如下(但是ajax会存在跨域问题,慎用,一般可以把第三方网页挂在NC工程中,这样就不存在跨域的问题了)
6.第三方网页存放的位置
packagenc.impl.ca.cuma.account.ma;
importjava.io.BufferedReader;
importjava.io.IOException;
importjava.io.PrintWriter;
importjava.util.List;
importjava.util.Map;
importjavax.servlet.ServletException;
importjavax.servlet.http.HttpServlet;
importjavax.servlet.http.HttpServletRequest;
importjavax.servlet.http.HttpServletResponse;
importnc.bs.ca.capub.service.NCLocatorFactory;
importnc.bs.framework.common.NCLocator;
importnc.bs.framework.comn.NetStreamContext;
importnc.bs.framework.core.service.IFwLogin;
importnc.jdbc.framework.processor.MapListProcessor;
importnc.pubitf.ca.cuma.account.ma.IMACoverPlanService;
importnet.sf.json.JSONArray;
importnet.sf.json.JSONObject;
publicclassCoverPlanServletextendsHttpServlet{
privatestaticfinallongserialVersionUID=1L;
privateMapListProcessormyMapListprocessor;
publicvoiddoGet(HttpServletRequestrequest,HttpServletResponseresponse)
throwsIOException,ServletException{
response.setContentType("text/html;charset=utf-8");
request.setCharacterEncoding("utf-8");
response.setCharacterEncoding("utf-8");
JSONObjectparaJson=JSONObject.fromObject(request
.getParameter("data"));
StringuserId=paraJson.getString("userId");
StringgroupId=paraJson.getString("groupId");
PrintWriterout=response.getWriter();
IFwLoginlogin=(IFwLogin)NCLocatorFactory
.getInstance().getCANCLocator().lookup("nc.bs.framework.core.service.IFwLogin");
NetStreamContext.setToken(login.login("yg","111aaa",null));
IMACoverPlanServicePlanService=(IMACoverPlanService)NCLocatorFactory
.getInstance().getCANCLocator()
.lookup("nc.pubitf.ca.cuma.account.ma.IMACoverPlanService");
List<Map>coverPlanList=PlanService.getCoverPlanList(groupId,userId,null,null,"0","10");
StringreturnJson=JSONArray.fromObject(coverPlanList).toString();
out.write(returnJson);
out.flush();
out.close();
}
publicvoiddoPost(HttpServletRequestrequest,HttpServletResponseresponse)
throwsIOException,ServletException{
this.doGet(request,response);
}
//publicStringreadJSONString(HttpServletRequestrequest){
//StringBufferjson=newStringBuffer();
//Stringline=null;
//try{
//BufferedReaderreader=request.getReader();
//while((line=reader.readLine())!=null){
//json.append(line);
//}
//}catch(Exceptione){
//System.out.println(e.toString());
//}
//returnjson.toString();
//}
}
2.在account.portal.part中配置Servlet(注意使用一下LFW工具--->同步所有元素--->重启NC服务)
<?xmlversion="1.0"encoding="UTF-8"?>
<web-app>
<context-param>
<param-name>ctxPath</param-name>
<param-value>/account</param-value>
</context-param>
<context-param>
<param-name>modules</param-name>
<param-value>account</param-value>
</context-param>
<servlet>
<servlet-name>CoverPlanServlet</servlet-name>
<servlet-class>nc.impl.ca.cuma.account.ma.CoverPlanServlet2</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>CoverPlanServlet</servlet-name>
<url-pattern>/CoverPlanServlet</url-pattern>
</servlet-mapping>
</web-app>
3.通过网页请求访问
http://IP:port/portal/CoverPlanServlet
4.简单的结果演示(CoverPlanServlet2只是我方便说明问题,不是上面的CoverPlanServlet)
5.第三方网页通过ajax请求如下(但是ajax会存在跨域问题,慎用,一般可以把第三方网页挂在NC工程中,这样就不存在跨域的问题了)
varjson={"edit":[{"bh":"11111","mc":"11111","dbms":"ORACLE9i","dwmmc":"","addr":"","username":"","password":"","rm_sz":"ck","nyr_sz":"","id":"-1"},{"bh":"121","mc":"12","dbms":"ORACLE9i","dwmmc":"12","addr":"12","username":"12","password":"12","rm_sz":"ck","nyr_sz":"2011-09-06","id":"13"}],"del":["12"]};
varpost={data:JSON.stringify(json)};//JSON.stringify(json)把json转化成字符串
//$.post(url,post);
$(document).ready(function(){
alert("readyin...");
//$("#send").click(function(){
alert("#sendin...");
$.post("/portal/CoverPlanServlet",
post,
function(data,textStatus){
alert("数据:"+data+"\n状态:"+textStatus);
});
//});
});
6.第三方网页存放的位置
相关文章推荐
- 第四次作业——个人作业——软件案例分析
- HYSBZ 2243 染色
- Vim命令学习笔记
- CSS RESET(让所有的浏览器站在同一条线上)
- 点击startup.bat文件无法启动Tomcat
- 大型开源日志系统比较
- redis unwatch discard
- 用rman恢复备库;遇到备库起不来一个案例 ORA-01152:ORA-01110
- Git学习 -- 标签管理
- Java读取UTF-8格式txt文件第一行出现乱码——问号“?”及解决;Java读带有BOM的UTF-8文件乱码原因及解决方法
- (二)学习seajs模块定义和模块引用相关API
- 此文本文件包含的数据无法放置在一个工作表中 gb2312
- 此文本文件包含的数据无法放置在一个工作表中 gb2312
- node.js笔记
- 类类型成员引用的问题
- Android Studio下多渠道打包
- Homestead 无法挂载共享目录解决方案
- Android Studio下多渠道打包
- HDU 5528 Count a × b 纪念长春站的遗憾
- 词法分析程序~总结