`
hengrg
  • 浏览: 4088 次
  • 性别: Icon_minigender_1
  • 来自: 上海
文章分类
社区版块
存档分类
最新评论

webserve

阅读更多
package Freesky.PCM.Common.Soap.WS;

import java.io.File;
import java.rmi.RemoteException;
import java.util.ArrayList;
import java.util.Date;
import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
import java.util.Map;

import javax.xml.rpc.ServiceException;

import org.apache.axis.client.Call;
import org.apache.axis.client.Service;
import org.apache.xerces.xni.QName;
import org.dom4j.Document;
import org.dom4j.DocumentException;
import org.dom4j.DocumentHelper;
import org.dom4j.Element;
import org.dom4j.io.SAXReader;

import Freesky.PCM.Common.Soap.Interface.IImageBP;
import Freesky.PCM.Common.Soap.Interface.IImageWS;

public class ImageWS implements IImageWS {

private IImageBP iImageBP;

public IImageBP getiImageBP() {
return iImageBP;
}

public void setiImageBP(IImageBP iImageBP) {
this.iImageBP = iImageBP;
}

public String IfService(String ifUser, String ifPass, String ifCode,
String ifEvent, String info) throws Exception {
List<String> list = null;
Map<String , String> map=null;
Map<String, String> maps = new HashMap<String, String>();
/*if (ifUser.equalsIgnoreCase("PCMUSER")) {
maps.put("flag", "1");
maps.put("info", "成功");
if (ifPass.equalsIgnoreCase("USERPCM")) {
maps.put("flag", "1");
maps.put("info", "成功");
if (ifCode.equalsIgnoreCase("SXPCM")) {
maps.put("flag", "1");
maps.put("info", "成功");
if (ifEvent.equalsIgnoreCase("UPDATESTATE")) {
maps.put("flag", "1");
maps.put("info", "成功");

} else {
maps.put("flag", "0");
maps.put("info", "接口标识错误");
}
} else {
maps.put("flag", "0");
maps.put("info", "系统标示符错误");
}
} else {
maps.put("flag", "0");
maps.put("info", "密码错误");
}
} */
if(ifCode.equalsIgnoreCase("IF_ImageState")){
maps.put("flag", "1");
maps.put("info", "成功");
}else {
maps.put("flag", "0");
maps.put("info", "接口标识有误");
}
if (maps.get("flag").equalsIgnoreCase("1")) {
map = parseXMLS(info);
maps = iImageBP.changePCMState(map);
}
return createXMLS(maps);
}

private List<String> parseXML(String info) throws Exception {
List<String> list = new ArrayList<String>();
String pcm_code = "";
Document document = DocumentHelper.parseText(info);
Element root = document.getRootElement();
Element result = root.element("images");
Iterator iter = result.elementIterator("image");
while (iter.hasNext()) {
Element image = (Element) iter.next();
pcm_code = image.element("pcm_code").getText().trim();
list.add(pcm_code);
}
return list;
}

private Map<String , String> parseXMLS(String info) throws Exception {
List<String> list = new ArrayList<String>();
Map<String , String> map=new HashMap<String, String>();
String pcm_code = "";
String bar_detail = "";
Document document = DocumentHelper.parseText(info);
Element root = document.getRootElement();
Element result = root.element("images");
Iterator iter = result.elementIterator("image");
while (iter.hasNext()) {
Element image = (Element) iter.next();
pcm_code = image.element("bar_code").getText().trim();
bar_detail=image.element("bar_detail").getText().trim();
// list.add(pcm_code);
map.put(pcm_code, bar_detail);
}
return map;
}

private String createXML(Map<String, String> map) throws Exception {
Document document = DocumentHelper.createDocument();
document.setXMLEncoding("GBK");
Element root = document.addElement("ifResponse");
Element ifResult = root.addElement("ifResult");
if (map.get("flag").equalsIgnoreCase("1")) {
Element flag = root.addElement("flag");
flag.setText(map.get("flag"));
flag.addAttribute("Note", "标志");
Element info = root.addElement("info");
info.setText(map.get("info"));
info.addAttribute("Note", "信息");
Iterator iter = map.keySet().iterator();
while (iter.hasNext()) {
String key = iter.next().toString();
if (map.get(key).equalsIgnoreCase("0")
|| map.get(key).equalsIgnoreCase("1")
&& !key.equalsIgnoreCase("flag")) {
Element result = ifResult.addElement("result");
result.addAttribute("Note", "结果");
Element pcm_result = result.addElement("pcm_result");
pcm_result.setText(map.get(key));
pcm_result.addAttribute("Note", "接口处理结果");
Element pcm_code = result.addElement("pcm_code");
pcm_code.setText(key);
pcm_code.addAttribute("Note", "报账单号");
Element pcm_time = result.addElement("pcm_time");
pcm_time.setText(new Date().toLocaleString());
pcm_time.addAttribute("Note", "接收时间");
}
}

} else {
Element flag = root.addElement("flag");
flag.setText(map.get("flag"));
flag.addAttribute("Note", "标志");
Element info = root.addElement("info");
info.setText(map.get("info"));
info.addAttribute("Note", "信息");
}
return document.asXML();
}

private String createXMLS(Map<String, String> map) throws Exception {
Document document = DocumentHelper.createDocument();
document.setXMLEncoding("UTF-8");
Element root = document.addElement("ifResponse");
Element returnInfos = root.addElement("returnInfos");
if (map.get("flag").equalsIgnoreCase("3")||map.get("flag").equalsIgnoreCase("0")) {
Iterator iter = map.keySet().iterator();
while (iter.hasNext()) {
String key = iter.next().toString().trim();
if (map.get(key).equalsIgnoreCase("0")
|| map.get(key).equalsIgnoreCase("1")) {
Element result = returnInfos.addElement("result");
// result.addAttribute("Note", "结果");
Element ifResult = result.addElement("ifResult");
ifResult.setText(map.get(key));
// ifResult.addAttribute("Note", "接口处理结果");
Element infoId = result.addElement("infoId");
infoId.setText(map.get(key+"bar_detail"));
// infoId.addAttribute("Note", "发送记录Id");
Element receive_user = result.addElement("receive_user");
receive_user.setText("PCMUSER");
// receive_user.addAttribute("Note", "接收人");
Element receive_time = result.addElement("receive_time");
receive_time.setText(new Date().toLocaleString());
// receive_time.addAttribute("Note", "接收时间");
}
}

} else {
Element result = returnInfos.addElement("result");
// result.addAttribute("Note", "结果");
Element ifResult = result.addElement("info");
ifResult.setText("21");
// ifResult.addAttribute("Note", "接口处理结果");
Element infoId = result.addElement("info");
infoId.setText("");
// infoId.addAttribute("Note", "发送记录Id");
Element receive_user = result.addElement("info");
receive_user.setText("");
// receive_user.addAttribute("Note", "接收人");
Element receive_time = result.addElement("info");
receive_time.setText("");
// receive_time.addAttribute("Note", "接收时间");
}
System.out.println("outout  "+document.asXML());
return document.asXML();
}

public static void main(String args[]) {
SAXReader reader = new SAXReader();
ImageWS ws = null;
Map<String, String> map = null;
Document document = null;
try {
document = reader.read(new File("c:\\images.xml"));
System.out.println(document.asXML());
// ws = new ImageWS();
// ws.parseXMLS(document.asXML());
System.out.println(new Date().toLocaleString());
// map = new HashMap<String, String>();
// map.put("123123123", "1");
// map.put("123123122", "1");
// map.put("123123121", "1");
// map.put("flag", "1");
// map.put("info", "信息");
// System.out.println(ws.createXML(map));
} catch (DocumentException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
String url = "http://169.254.8.81:8080/pcm/services/imageWS";
Service ser = new Service();
try {
Call call = (Call) ser.createCall();
call.setTargetEndpointAddress(url);
call.setOperationName(new javax.xml.namespace.QName(url,
"IfService"));
String result = (String) call.invoke(new Object[] { "PCMUSER",
"USERPCM", "IF_ImageState", "IF_ImageState", document.asXML() });
System.out.println(result);
} catch (ServiceException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (RemoteException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
分享到:
评论

相关推荐

    WEB_server_to_create_Java_code_achieve_Socket.rar_java web serve

    本主题聚焦于使用Java编程语言通过Socket来实现一个简单的Web服务器。Socket在计算机网络中扮演着通信桥梁的角色,允许两个程序之间建立连接并交换数据。 首先,我们要理解Java中的Socket编程。Socket是Java网络...

    LabVIEW Web Server 设计

    LabVIEW Web Server 设计是一种利用LabVIEW开发的强大功能,使得用户可以通过Web浏览器远程监控和控制运行在服务器端的LabVIEW应用程序。这一特性使得用户无需在服务器端直接操作,即可实现远程的数据采集、分析和...

    Qt实现WebServer通讯

    【Qt实现WebServer通讯】这一主题涉及到的是使用Qt框架构建一个能够与Web服务器进行通信的应用程序。Qt是一个跨平台的C++开发库,它提供了丰富的功能,包括图形用户界面、网络编程、数据库接口等,使得开发者可以...

    VC开发的WEBSERVICE服务器

    在IT行业中,Web Service是一种基于开放标准(如XML、SOAP、WSDL和UDDI)的通信协议,它允许不同的应用程序之间进行数据交换。在本主题中,我们将深入探讨使用Visual C++(简称VC)开发Web Service服务器的相关知识...

    兼容win10的ASP WebServer

    ASP WebServer是一款专门为Windows 10操作系统设计的Web服务器软件,它允许开发者在本地环境进行ASP(Active Server Pages)应用程序的开发和测试。ASP是一种基于微软.NET Framework的服务器端脚本语言,常用于构建...

    C++调用WebService封装成DLL,供外部调用

    WSDL(Web服务描述语言)用于描述WebService的接口,包括其提供的操作、参数和返回值。 在C++中调用WebService通常涉及以下步骤: 1. **选择库**:为了在C++中访问WebService,我们需要一个库,如gSOAP或libcurl。...

    tcp web server

    C编写的基于TCP的web server 端 可以下载网页

    vb6.0调用webservice详解

    在VB6.0中调用Web服务是一种将传统桌面应用程序与现代网络服务集成的重要方法。Web服务通常基于SOAP(简单对象访问协议)和WSDL(Web服务描述语言),允许不同平台和语言之间的通信。本教程将深入探讨如何在Visual ...

    ebs发布webservice详解

    在IT领域,特别是企业级应用服务(EBS)与Web服务集成方面,Oracle E-Business Suite(EBS)提供了一套强大的工具和技术,允许企业通过Web服务接口将EBS的功能暴露给外部系统或应用程序。本文将深入探讨在EBS中发布...

    webserver初级项目

    Web服务器是一个基于Linux的简单的服务器...包含webserve.c和pub.c ,wrap.c 在浏览器上面的搜索栏输入http://192.168.44.3:9999/hanzi.c 192.168.44.3是Linux环境的本机IP地址,9999是端口号,hanzi.c是打开的文件名

    Arduino-WebServer_tng.zip

    Arduino-WebServer_tng.zip,ESP8266/ESP32网络服务器,Arduino是一家开源软硬件公司和制造商社区。Arduino始于21世纪初,深受电子制造商的欢迎,Arduino通过开源系统提供了很多灵活性。

    (牛客网C++课程)Linux 高并发Web服务器项目实战(带定时检测代码)

    (牛客网C++课程)Linux 高并发Web服务器项目实战(带定时检测代码) 技术框架: 1. 线程池 + 非阻塞 socket + epoll + 事件处理的并发模型 2. 状态机解析HTTP请求 3. 心跳机制 4. 简易日志系统 主要内容: 1. ...

    ASP.NET和IIS出错问题总结.rar

    3.无法在Web服务器上启动调试。 4.无法在Web服务器上启动调试。Web服务器未能找到请求的资源。 5.单击“ASP.NET 配置”中的“安全”选项卡时显示错误信息 6.用户 'NT AUTHORITY\NETWORK SERVICE' 登录失败

    Android代码-ktor

    Ktor is a framework for quickly creating web applications in Kotlin with minimal effort. import io.ktor.server.netty.* import io.ktor.routing.* import io.ktor.application.* ...Runs embedded web serve

    web-serve:一个轻量级的Web服务器,用于将任何Web应用程序的生产版本提供到单个二进制文件中,甚至更多。

    网络服务 程序 通过npm run build (例如)或任何适当的方式生成您的生产版本。..../&lt;binary&gt; help web-serve - A lightweight production build webapp server Usage: web-serve [commands] [flags] web

    wsdl生成java客户端报错

    java.lang.reflect.invocationtargetexception问题的解决方法之一

    LaiErNet企业网站管理系统 v1.4.9 免费版

    此种问题主要是由于WebServe的问题,请确认您是否使用的IIS做为WebServe,目前系统只支持IIS; 2、系统安装成功后,不能更新数据? 请检查你的IIS权限设置是否正确,数据库存放目录是否有写入权限,如果均给了权限...

    axis2 webservice 实例(包括服务端代码及客户端代码)

    在压缩包内的文件名称列表中提到的“webServe”,可能是该项目的Web服务目录或者工程文件,包含了服务端的部署描述符(如wsdd文件)、服务类文件以及客户端的调用代码。在服务端,开发者通常会创建一个服务类,该类...

    Axis2发布以及调用webservice具体实例

    在 Eclipse 中创建一个 Web Project,命名为 `webServe`。在此项目中新建包 `com.cm.service` 并创建类 `HelloWorld`: ```java package com.cm.service; public class HelloWorld { public String sayHello...

Global site tag (gtag.js) - Google Analytics