- 浏览: 350953 次
- 性别:
- 来自: 南宁
文章分类
最新评论
-
萌蜗牛:
我也用华为smproxy包发送短信,运行一会儿后总是间隔一段时 ...
半桶水开发 CMPP2.0 with Spring + JPA 2 -
萌蜗牛:
我也用华为smproxy包发送短信,运行一会儿后总是间隔一段时 ...
半桶水开发 CMPP2.0 with Spring + JPA 1 -
萌蜗牛:
我也用华为smproxy包发送短信,运行一会儿后总是间隔一段时 ...
半桶水开发 CMPP2.0 with Spring + JPA 3 -
sw970345363:
[b][/b]
jqGrid 表格demo -
二年级chuck:
哪里有Java的验证。
reCAPTCHA 学习
根据那个图片上传处理服务器的思路,小改了一个处理器.尚未测试.
使用dom4j解析收到的XML 并返回处理结果
需要JDK6
处理模块
辅助类
使用dom4j解析收到的XML 并返回处理结果
需要JDK6
/** * provision * @author rikugun */ public class CMPP3Provision { private static HttpServer hs; private static Logger logger = Logger.getLogger(CMPP3Provision.class.getName()); static { try { logger.debug("初始化Http Server"); hs = HttpServer.create(new InetSocketAddress(1234), 0); //设置HttpServer的端口为1234 hs.createContext("/provision", new ProvisionHandler()); } catch (IOException ex) { logger.warn("初始化Provision出错!", ex); } } public CMPP3Provision() { } public void Start() { hs.start(); } public void Stop() { hs.stop(1); } }
处理模块
/** * provision处理模块 * @author rikugun */ public class ProvisionHandler implements HttpHandler { private static Logger logger = Logger.getLogger(ProvisionHandler.class.getName()); private static Document dom, repDom; private static SAXReader saxReader = new SAXReader(); @Override public void handle(HttpExchange t) throws IOException { logger.debug("获取同步信息,来自:"+t.getRemoteAddress().toString()); logger.debug(t.getRequestHeaders().entrySet().toString()); OutputStream os = t.getResponseBody(); try { dom = saxReader.read(t.getRequestBody()); repDom = doSync(dom); t.sendResponseHeaders(200, repDom.asXML().length()); os.write(repDom.asXML().getBytes()); } catch (DocumentException ex) { logger.warn("解析XML错误", ex); } os.close(); } private Document doSync(Document dom) { logger.debug("--------获取到的XML--------"); logger.debug(dom.asXML()); logger.debug("--------获取到的XML--------"); Element header = (Element) dom.getRootElement().element("Header"); //transactionID String transactionID = header.elementText("TransactionID"); Element body = (Element) dom.getRootElement().element("Body"); Element syncOrderRelationReq = (Element) body.element("SyncOrderRelationReq"); //UserId List<Element> msidn = body.selectNodes("ActionID"); List<Element> user = body.selectNodes("//FeeUser_ID"); //动作类型 String actionId = syncOrderRelationReq.elementText("ActionID"); //动作原因 String actionReasonId = syncOrderRelationReq.elementText("ActionReasonID"); //业务ID String serviceId = syncOrderRelationReq.elementText("SPServiceID"); //附加参数 String featureStr = syncOrderRelationReq.elementText("FeatureStr"); //TODO 更新数据库中的用户订购信息 SyncOrderRelationResp ret = new SyncOrderRelationResp(transactionID,"0"); logger.debug("--------返回的XML--------"); logger.debug(ret.getDocument().asXML()); logger.debug("--------返回的XML--------"); //返回执行成功的XML return ret.getDocument(); } }
辅助类
/** * 同步信息响应 * @author rikugun */ public class SyncOrderRelationResp { //原始XML private static String raw = "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n" + "<SOAP-ENV:Envelope xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xmlns:SOAP-ENV=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:SOAP-ENC=\"http://schemas.xmlsoap.org/soap/encoding/\" xmlns:xsd=\"http://www.w3.org/2001/XMLSchema\">\n" + " <SOAP-ENV:Header>\n" + "<TransactionID xmlns=\"http://www.monternet.com/dsmp/schemas/\">00240301659556</TransactionID>\n" + "</SOAP-ENV:Header>\n" + "<SOAP-ENV:Body>\n" + "<SyncOrderRelationResp xmlns:=\"http://www.monternet.com/dsmp/schemas/\">\n" + "<Version xsi:type=\"xsd:string\">1.5.0</Version>\n" + "<MsgType xsi:type=\"xsd:string\">SyncOrderRelationResp</MsgType>\n" + "<hRet xsi:type=\"xsd:integer\">1</hRet>\n" + "</SyncOrderRelationResp>\n" + "</SOAP-ENV:Body>\n" + "</SOAP-ENV:Envelope>"; private static Document dom; private static Element transaction, hRet; static { try { dom = DocumentHelper.parseText(raw); } catch (DocumentException ex) { Logger.getLogger(SyncOrderRelationResp.class.getName()).warn("生成响应XML出错!", ex); } transaction = dom.getRootElement().element("Header").element("TransactionID"); hRet = dom.getRootElement().element("Header").element("hRet"); } /** * 定制消息反馈 * @param transactionID 事务ID */ public SyncOrderRelationResp(String transactionID) { transaction.setText(transactionID); } /** * 定制消息反馈 * @param transactionID 事务ID * @param ret 返回值 */ public SyncOrderRelationResp(String transactionID, String ret) { transaction.setText(transactionID); hRet.setText(ret); } /** * 获取生成的结果Document * @return */ public Document getDocument() { return dom; } }
发表评论
-
weblogic8 控制台 启用和关闭
2012-08-06 14:04 1888因为安全审查的原因,需要临时修改weblogic ,关闭 we ... -
Eclipse 整合 Mylyn Trac
2011-11-04 15:06 1891<!--?xml version="1.0&q ... -
Tuxedo 调用EJB 报错问题
2011-08-01 15:32 2352新做了个tuxedo系统, 需要调用到EJB交易 测试时报错 ... -
Weblogic8 @aix socket达上限 报错
2011-07-29 14:34 1639今天发现有台weblogic应用链接不上了,检查日志发现如下信 ... -
AIX 下安装 memcached
2011-04-01 10:48 4658生产环境需要部署memcached 简单列下安装流程 操作系 ... -
OSX SnowLeopard 下的JRE1.4
2009-12-02 14:14 2039上一次更新SL的时候没有注意Java1.4会被去掉. 重新装了 ... -
封装一个jqGrid的数据源类
2009-07-07 21:11 5715这2个月刚换单位,比较赶进度.很久不更新blog,今天抽空看了 ... -
List.toArray() 问题
2009-05-30 16:30 2437今天写代码的遇到这个问题,网上找了一下问题原因和解决办法,记一 ... -
DWR中文文档.pdf
2009-05-20 11:30 2170项目用到这个,传上来存一下 -
weblogic 8.1 下载地址
2009-05-11 12:56 10624oracle官网上的最低版本只找到10.3,因需要8.1 上网 ... -
jax-ws 学习笔记
2009-03-31 15:40 1393A Provider-based endpoint can ... -
简单的JAVA HTTP server 如何解析附件
2009-03-03 16:34 2483想做一个简单的图片上传服务器,发现JDK6中有个HttpSer ... -
在NetBeans下用Swing做的计算器
2009-01-05 17:04 2628试用了Netbeans的gui设计,非常好用,拖拖拉拉就出来. ... -
随手做一个多线程的 CS架构的 文件传输Demo
2008-12-25 10:02 2347试一下JDK5的多线程编程,附件是代码,下载后改一下后缀名为. ... -
半桶水开发 CMPP2.0 with Spring + JPA 3
2008-12-19 10:51 2301半桶水开发 CMPP2.0 with Spring + JP ... -
半桶水开发 CMPP2.0 with Spring + JPA 2
2008-12-18 12:08 2981半桶水开发 CMPP2.0 with Spring + JP ... -
半桶水开发 CMPP2.0 with Spring + JPA 1
2008-12-18 11:31 3241本来公司招进来的时候是做PHP,简历哪里手多写了会Ja ... -
记这辈子第一次出差
2008-11-14 21:10 1344今天因柳州电子运维系统的问题没有解决,终于被派遣过去 ...
相关推荐
卓望java笔试题enuke赋值 这是enuke软件给招聘节点工程师的作业 问:什么时候不使用 NodeJ 是个好主意? 为什么? 答。 Node.js 由于其单线程模型,不适合 CPU 密集型应用程序。 因此,如果应用程序具有大量计算,...
### 卓望手机游戏业务交流材料知识点解析 #### 一、手机游戏业务基本定义与分类 **手机游戏**指的是能够运行在手机上的游戏,这些游戏通常由专门的游戏开发商提供。根据运行环境的不同,手机游戏可以分为几大类别...
1、测试发送包 <?xml version="1.0" encoding="utf-8"?> ...<SOAP-ENV:Header> <TransactionID xmlns="http://www.monternet.com/dsmp/schemas/">0011030165955 </SOAP-ENV:Header> <SOAP-ENV:Body> ...
在项目经验方面,叶先生参与过卓望员工福利商城项目,该项目是基于Vue2.0全家桶的PC端商城系统,利用Element-UI组件库进行辅助开发。他还负责了Jax官网的前端工作,主要使用jQuery和Bootstrap实现页面交互和逻辑。...
卓望WAP业务管理系统卓望WAP业务管理系统卓望WAP业务管理系统
卓望DSMP接口卓望DSMP接口卓望DSMP接口卓望DSMP接口卓望DSMP接口
DSMP(Data Service Management Platform)是中国移动与卓望科技共同制定的技术标准,而卓望科技的MISC平台是基于此标准的产品。目前,MISC系统已在全国设立28个节点,服务于数千家SP和数万项业务,确保了“移动梦网...
因此,深圳卓望数码技术有限公司与深圳市安财软件有限公司携手合作,共同推出了针对移动运营商需求的财务共享解决方案,意在革新报销流程,提高整体财务效率。 该方案的核心依托是安财网上报销系统,一套集成了先进...
本文档针对深圳卓望数码网上报销解决方案的实施细节进行了深入探讨,该方案由卓望数码技术(深圳)有限公司和深圳市安财软件有限公司合作推出,针对移动运营商的报销流程,旨在通过技术手段,提高报销流程的效率和...
谨防! 下面的扩展可能会增加或减少你渴望前往真棒新的旅游目的地的渴望。 使用… 谨防! 下面的扩展可能会增加或减少你渴望前往真棒新的旅游目的地的渴望。 小心使用。 支持语言:English
- **104**:用户无此权限。表示用户没有进行某项操作所需的权限。 - **105**:业务代码错误。这可能是因为提供的业务代码不正确或无效。 - **106**:服务代码错误。同样是指服务代码不正确或无效。 - **107**:业务...
《卓望飞信音视频工程建设方案》是中国移动通信集团设计院有限公司在2010年1月提出的一项针对315晚会的特殊工程计划。该方案旨在通过与中央电视台315栏目组的合作,展示TD网络和飞信在视频通话方面的功能。为了实现...
3. 系统概述:工程在北京移动丰台机房新建一套飞信音视频平台,包括媒体控制服务器、媒体中转服务器、媒体网关和信令网关等关键设备。总投资为216万元,其中主设备价格197万元。 4. 系统功能与业务容量:系统设计能...
- 浏览器兼容性:对于Web应用而言,需测试在Chrome、Firefox、Safari等不同浏览器下的表现。 - 移动设备兼容性:包括iOS和Android平台的不同版本。 - 硬件兼容性:例如不同品牌的打印机、扫描仪等外设。 - ...
**WAP业务应用程序接口规范**,由卓望数码技术(深圳)有限公司于2002年发布,旨在为接入中国移动信息服务中心(MISC)平台的WAP业务服务提供商(SP)提供详细的应用程序接口(API)指南。该规范明确了MISC平台V1.5...
SunloginClient是一款由卓望公司开发的远程桌面控制软件,主要应用于Linux系统,尤其是AMD64架构的机器。"SunloginClient-11.0.1.44968-amd64.deb"是该软件的一个特定版本,版本号为11.0.1,构建号为44968,且它是为...