1、遇到数组类型或List等复杂数据类型是,需要对其进行包装,就是将复杂数据类型放到一个类里面:

public class VOCargoJTWS {
/** JT列表 */
private List<TBLCargoJT> cargoJTs;
/** 分页数据信息*/
private PageInfo pageInfo; public VOCargoJTWS() {
super();
} @SuppressWarnings("unchecked")
public VOCargoJTWS(PageInfo pageInfo) {
super();
this.cargoJTs = (List<TBLCargoJT>) pageInfo.getList();
this.pageInfo = pageInfo;
pageInfo.setList(null);
}}

2.基于JBOSS服务器发布webservice:

  在浏览器可以看到发布信息,访问地址http://lenovo-pc/EvisaWS/CargoJTService?wsdl 。

@Stateless
@WebService
@WebContext(contextRoot = "/EvisaWS", urlPattern = "/CargoJTService")
@SOAPBinding(style = SOAPBinding.Style.RPC)
public class CargoJTWSBean implements CargoJTWS { private static final Logger logger = Logger.getLogger(CargoJTWSBean.class);
@EJB
private CargoJTServiceLocal cargoJTServiceLocal; @WebMethod
@WebResult(partName = "return")
public VOCargoJTWS findPageInfo(Integer currentPage, Integer pageCount) {
try {
PageInfo pageInfo = cargoJTServiceLocal.findPageInfo1(currentPage, pageCount);
VOCargoJTWS cargoJTWS = new VOCargoJTWS(pageInfo);
return cargoJTWS;
} catch (Exception e) {
logger.error(e);
}
return null;
}
}

3、处理关联关系:

  如果类与类直接存在关联关系,不需要查询出子表信息时,可以直接将其设置为null。如果需要,那么可通过集合的size方法加载,子类的关联关系和父类关联关系的处理方式一样。

  如果出现循环调用,Parent--->Child--->Parent,可以在get属性上加 @XmlTransient 注释。

@Stateless
@Local(CargoJTServiceLocal.class)
@LocalBinding(jndiBinding = "CargoJTServiceBean/local")
@Remote(CargoJTServiceRemote.class)
@RemoteBinding(jndiBinding = "CargoJTServiceBean/remote")
public class CargoJTServiceBean implements CargoJTServiceLocal, CargoJTServiceRemote { private static final Logger logger = Logger.getLogger(CargoJTServiceBean.class);
@EJB
private CargoJTDaoLocal cargoJTDao; @SuppressWarnings("unchecked")
public PageInfo findPageInfo1(Integer currentPage, Integer pageCount ) throws ServiceException {
try {
PageInfo piInfo = cargoJTDao.findPageInfo(currentPage, pageCount);
List<TBLCargoJT> list = (List<TBLCargoJT>) piInfo.getList();
for(TBLCargoJT cargoJT : list){
cargoJT.getAssessType().getCode();
cargoJT.setGoods(null);
}
return piInfo;
} catch (DAOException e) {
logger.error(e);
throw new ServiceException("", e);
}
}
}

4、这是.net根据wsdl生成的类列表:

  要生成   voCargoJTWS   这个对象也就是在c#中可以看到,那么这个对象里面必须有两个以上的属性,否则这个对象不会生成。

.net调用java webservice基于JBOSS服务器 学习笔记(一)的更多相关文章

  1. Java web与web gis学习笔记(二)——百度地图API调用

    系列链接: Java web与web gis学习笔记(一)--Tomcat环境搭建 Java web与web gis学习笔记(二)--百度地图API调用 JavaWeb和WebGIS学习笔记(三)-- ...

  2. Java程序猿的JavaScript学习笔记(3——this/call/apply)

    计划按例如以下顺序完毕这篇笔记: Java程序猿的JavaScript学习笔记(1--理念) Java程序猿的JavaScript学习笔记(2--属性复制和继承) Java程序猿的JavaScript ...

  3. Java程序猿的JavaScript学习笔记(10—— jQuery-在“类”层面扩展)

    计划按例如以下顺序完毕这篇笔记: Java程序猿的JavaScript学习笔记(1--理念) Java程序猿的JavaScript学习笔记(2--属性复制和继承) Java程序猿的JavaScript ...

  4. Java web与web gis学习笔记(一)——Tomcat环境搭建

    系列链接: Java web与web gis学习笔记(一)--Tomcat环境搭建 Java web与web gis学习笔记(二)--百度地图API调用 JavaWeb和WebGIS学习笔记(三)-- ...

  5. Java程序猿的JavaScript学习笔记(6——面向对象模拟)

    计划按例如以下顺序完毕这篇笔记: Java程序猿的JavaScript学习笔记(1--理念) Java程序猿的JavaScript学习笔记(2--属性复制和继承) Java程序猿的JavaScript ...

  6. Java程序猿的JavaScript学习笔记(5——prototype和Object内置方法)

    计划按例如以下顺序完毕这篇笔记: Java程序猿的JavaScript学习笔记(1--理念) Java程序猿的JavaScript学习笔记(2--属性复制和继承) Java程序猿的JavaScript ...

  7. 图灵学院JAVA互联网架构师专题学习笔记

    图灵学院JAVA互联网架构师专题学习笔记 下载链接:链接: https://pan.baidu.com/s/1xbxDzmnQudnYtMt5Ce1ONQ 密码: fbdj如果失效联系v:itit11 ...

  8. Java程序猿的JavaScript学习笔记(汇总文件夹)

    最终完结了,历时半个月. 内容包含: JavaScript面向对象特性分析,JavaScript高手必经之路. jQuery源代码级解析. jQuery EasyUI源代码级解析. Java程序猿的J ...

  9. Java程序猿的JavaScript学习笔记(8——jQuery选择器)

    计划按例如以下顺序完毕这篇笔记: Java程序猿的JavaScript学习笔记(1--理念) Java程序猿的JavaScript学习笔记(2--属性复制和继承) Java程序猿的JavaScript ...

随机推荐

  1. windows 7 ssh server for scp

    Software: BvSshServe. (个人用免费,商业收费) scp localfile.txt user_tst@11.111.12.170:'E:\downloads\SSH\auto.p ...

  2. msmq中消息的数量

    using System.Diagnostics; PerformanceCounter objCounter = new PerformanceCounter("MSMQ Queue&qu ...

  3. leetcode Database1(三)

    一.Rising Temperature Given a Weather table, write a SQL query to find all dates' Ids with higher tem ...

  4. HTML5中的localStorage用法

    存储数据的方法就是直接给window.localStorage添加一个属性,例如:window.localStorage.name 或者 window.localStorage["name& ...

  5. 设置Sublime Text2 中代码提示

    打开sublime text的菜单 Preferences -> Package Settings -> GoSublime ->Settings – User  然后输入 { &q ...

  6. laravel中的命名公约规范及relation N+1问题

    User: model  ;  users: 表名: user_id 键值 relation: public function tasks(){return $this->belongsToMa ...

  7. 【笨嘴拙舌WINDOWS】BMP图片浏览器

    要将文件显示成图片这其中需要经过 1.将磁盘文件内容读取到内存: 2.将文件对应内存里包含的像素为以及像素信息转化为显示驱动器能理解的格式: 3.将转化过后的内存送到显卡的缓存区 4.显示器读取缓存现 ...

  8. [转载]hao123军事频道首页JQ焦点图

    适用浏览器:IE8.360.FireFox.Chrome.Safari.Opera.傲游.搜狗.世界之窗. *本作品由[站长素材]收集整理,转载请注明出处! 下载地址

  9. HDU 3573 Buy Sticks (逻辑)

    题意:a,b,c三种棍子长度分别为20,28,32,现需要这三种棍子数根,欲买长为75的棍子来剪成这三种(不够长的就废弃) ,问需要买多少根. 思路:将所有棍子尽可能和其他搭配起来,使得数量减到最少. ...

  10. NHibernate实例化类部分属性

    NHibernate 为习惯SQL的开发者提供了接口,将查询的结果转变为持久化对象.虽然该方法不是很提倡. GetCurrentSession().CreateSQLQuery(sql) 参数sql就 ...