首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > J2EE开发 >

两个系统其间用URL方式互相调用,这样实现

2011-12-22 
两个系统之间用URL方式互相调用,这样实现?最近遇到这样一个问题,现在的项目要和另外一个项目整合出一个共

两个系统之间用URL方式互相调用,这样实现?
最近遇到这样一个问题,现在的项目要和另外一个项目整合出一个共同点,做成一个小的系统,通过URL方式调用现在系统的方法实现查询一些数据的功能 ,现有系统用struts1做的,我想这样实现:在action中写一个方法,然后通知外部调用者通过一个URL带参数访问我的Action,我给他返回一个xml格式的字符串,可是我现在有点想不明白,如果这样的话 我在action中就要用输出流来写xml 那我的actionmapping要forward到哪里去呢?或者是这个action直接return null;

有类似经验的朋友帮我解答一下,谢谢!

今天加班了,呵呵,也祝和我一块加班的朋友加班快乐~~休息的朋友,玩的快乐~~

补充一下:如果对方用ajax的方式调用 能实现么?也就是用ajax调用另外一个系统的action~~

[解决办法]
比如A系统的action为 www.helloa.com/a.do B系统的action为 www.hellob.com/b.do

那么a请求b就直接将form提交到www.hellob.com/b.do b的action就直接向流里面写入xml, 然后return null,a接受到xml之后进行数据处理就好了


Java code
public ActionForward execute(ActionMapping mapping, ActionForm form,            HttpServletRequest request, HttpServletResponse response) {      try {        request.setCharacterEncoding("utf-8");        response.setContentType("text/html;charset=utf-8");        // 返回    PrintWriter out = response.getWriter();        out.println("xmlcontent");    out.flush();      } catch (UnsupportedEncodingException e) {        e.printStackTrace();      } catch (IOException e) {            e.printStackTrace();      }      return null;}
[解决办法]
补充: 客户用ajax调用也是可以实现的 另外也可以使用HTTPClient来发送请求和接受响应
[解决办法]
拿到out对象后和在servlet里一样处理,只是最后return null;
你返回的是xml数据,用ajax调用没有问题

热点排行