zoukankan      html  css  js  c++  java
  • 普元EOS生成WebService时使用自定义实体映射属性

    概述

    最近使用普元EOS(下面简称EOS),制作Web Service接口供其他系统调用时发现, 使用EOS的DataObject作为入参报错, 按官方文档的示例也依然报错, 错误原因难以查找,便产生自己写一个JavaBean来实现自定义参数入参的问题, 但是JavaBean中由于按照驼峰式命名的规范, 在直接生成Web Service时xml的节点也同样会以驼峰的形式显示,而我的需求是节点显示成下划线分隔并且是大写英文。经过我搜集查询资料发现是有方法可以映射的。

    解决方法

    由于EOS中集成了XFire,因此我们需要在自定义的JavaBean同目录下新建一个与JavaBean同名称的.aegis.xml文件,例子如下,假设我们需要一个Product类作为JavaBean,目录结构及代码如下:

    package com.primeton.eos;
    
    public class Product {
    	private String productName;
    	private String producePlace;
    	private Integer price;
    
    	public String getProductName() {
    		return productName;
    	}
    
    	public void setProductName(String productName) {
    		this.productName = productName;
    	}
    
    	public String getProducePlace() {
    		return producePlace;
    	}
    
    	public void setProducePlace(String producePlace) {
    		this.producePlace = producePlace;
    	}
    
    	public Integer getPrice() {
    		return price;
    	}
    
    	public void setPrice(Integer price) {
    		this.price = price;
    	}
    }
    

    而在同目录里下生成Product.aegis.xml

    <?xml version="1.0" encoding="UTF-8"?>
    <mappings>
    	<mapping name="PRODUCT">
    		<property name="price" mappedName="PRICE"/>
    		<property name="producePlace" mappedName="PRODUCE_PLACE"/>
    		<property name="productName" mappedName="PRODUCT_NAME"/>
    	</mapping>
    </mappings>

    右键逻辑构件(构件名称为CustomerManagement.componentType),生成Web Service,而生成的wsdl文件时,如果生成后的节点显示为in0,in1,可修改生成后的wsdl为指定名称,如下例子由in0修改为PRODUCTS,访问的节点也会随机改变

    入参映射到我们的JavaBean类的配置就完成了。

    参考链接

    普元EOS技术文档-Web Service开发
    在Java中使用XFire配置文件aegis开发Web服务

  • 相关阅读:
    算法训练 P1103
    算法训练 表达式计算
    算法训练 表达式计算
    基础练习 时间转换
    基础练习 字符串对比
    Codeforces 527D Clique Problem
    Codeforces 527C Glass Carving
    Codeforces 527B Error Correct System
    Codeforces 527A Glass Carving
    Topcoder SRM 655 DIV1 250 CountryGroupHard
  • 原文地址:https://www.cnblogs.com/runningRookie/p/14348230.html
Copyright © 2011-2022 走看看