- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在使用 Axis 为示例 WebService 建模。我现在正在做的是试图了解自动化 wsdl 和代码生成的局限性。
现在对于一些服务器端代码:
这是示例 Web 服务的框架:
public class TestWebService {
public AbstractAttribute[] testCall( AbstractAttribute someAttribute ) {
....
和我的数据类: 公共(public)抽象类 AbstractAttribute { 字符串名称;
/*get/set for name*/
public abstract T getValue();
public abstract void setValue(T value);
}
public class IntAttribute extends AbstractAttribute<Integer> {
Integer value;
public Integer getValue(){ return value; }
public void setValue(Integer value){ this.value = value; }
}
public class StringAttribute extends AbstractAttribute<String> {
String value;
/* ok, you got the point, get/set for value field */
}
Axis2 的 eclipse 工具非常乐意从这些来源生成 wsdl,包括属性类的模式,即:
<xs:complexType name="AbstractAttribute">
<xs:sequence>
<xs:element minOccurs="0" name="name" nillable="true" type="xs:string"/>
<xs:element minOccurs="0" name="value" nillable="true" type="xs:anyType"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="IntAttribute">
<xs:complexContent>
<xs:extension base="xsd:AbstractAttribute">
<xs:sequence>
<xs:element minOccurs="0" name="value" nillable="true" type="xs:int"/>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="StringAttribute">
<xs:complexContent>
<xs:extension base="xsd:AbstractAttribute">
<xs:sequence>
<xs:element minOccurs="0" name="value" nillable="true" type="xs:string"/>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
现在,如果在这里看到一些奇怪的东西,AbstractAttribute 没有 ** abstract="true"** 属性,并且定义了一个 anyType 值元素,它在 IntAttribute 和 StirngAttribute 中被重写。我什至不知道这是否是一个合法的模式(顺便说一句,我认为它不合法)。
更多,如果我尝试从这个 wsdl 生成一个客户端(总是使用 eclipse 工具),生成的源将不会编译,因为 AbstractAttribute 定义了一个
Object localValue;
字段和 Int/String 属性定义
int localValue;
和
String localValue;
..我试图“容纳”源(显然没有太多希望),结果是服务器尝试实例化一个 AbstractAttribute 实例(抛出 InstantiationException)。
所以我的问题是:有一种方法可以像上面的数据模型一样对某些东西进行建模,或者 Web 服务和 XML 模式一般不是用于这种特定情况的最佳工具?
最佳答案
为了解释您遇到的问题,考虑调用您的服务时 Axis 需要做什么会有所帮助。
Axis 只是一个 java 网络应用程序...当它收到服务请求时,它会查找您为其定义的映射。如果找到映射,它会尝试创建您定义的必要类的实例来为请求提供服务。
如果您将类定义为抽象类或接口(interface)类,那么您将得到 InstantiationExceptions,因为无法创建这些类型。当 Axis 尝试创建 wsdl 时,它无法确定要放置的类型,因此它将使用“anyType”。
回答您的问题:您可以在代码中使用上面的模型,但不能将这些类与 Axis 一起使用。我们在项目中通常做的是:
希望这能回答您的问题。
关于wsdl - Axis wsdl 生成,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/546779/
我正在使用 HighCharts 线图,其中我的 x Axis 数据分布不均匀: [4, 10, 40, 100, 400, 1000, etc.] 目前,x 值均匀放置。我希望 x[5] 和 x[4
这是我使用的程序: library(plotly) mydata = read.csv("data_to_plot.txt") df = as.data.frame(mydata) p % gro
我一直在试图找到2之间的差异,但是要减去这个就没有运气了 The primary diff erence between the two representations is that a quate
给定一个没有 Axis 的图,我想使用 axis 添加一个水平 Axis 。在左侧,您会看到给定的“基线”图,在右侧,您会看到所需的结果: 基线图是使用简单生成的 plot(1, axes = FAL
我正在创建 XYPlot,并且需要反转 y Axis 上的顺序(也就是说,我需要较低的数字来使 Axis 上的数字较高)。如果有任何关于如何做到这一点的提示,我将不胜感激。 最佳答案 我也遇到了和你一
我有一个包含两个系列的图表,每个系列都有自己的yAxis。我需要自动将第二个轴最大值设置为第一个轴最大值的 13.5%。例如,如果第一个轴从 0 到 100,那么我希望第二个轴从 0 到 13.5(无
在 google 图表数据表对象中,我可以使用 datatable.getValue(...) 获取当前选择点值(V 轴/Y 轴)。但是,如果我想从 X 轴获取时间/日期/年份(请参见屏幕截图)。我没
我想知道是否有可能(我知道是)将绘图的 Axis 标签保留在绘图的一侧,将绘图的 Axis 标题保留在另一侧,特别是在离散的 geom_tile() 绘图中,如下所示: 最佳答案 您可以在 scale
我正在尝试制作带有自定义 Axis 标签的箱线图,但我似乎无法向图中添加 x Axis 。 例如: test <- data.frame(year=as.integer(rep(1963:2014,
我正在使用 LightningChartJS 创建图表。单击图例框中的系列描述后,系列消失,但 Axis 保留。是否可以将 Axis 与系列一起隐藏? 我的 Axis 和系列如下:- const ax
我有一个关于如何获取另一个 Axis 服务中已部署的 Axis 服务列表的问题。这是场景。我使用 Tomcat 7.0.14 和 Axis 2-1.5.5 作为部署环境。假设目前 Tomcat 上部署
我目前正在尝试使用包含两个 y Axis (一个在左边,一个在右边)的 AChartEngine 创建一个图表。然而,我似乎无法弄清楚如何才能真正添加第二个 y Axis 。一个 XYMultip
我正在使用 Core Plot 库在 iOS 上绘制图形。我想在 yAxis 的网格线之间添加颜色。我已经设法通过设置轴的 alternatingBandFills 属性来做到这一点。但是,我也必须在
我想知道是否有办法改变 x 轴刻度和 y 轴刻度背景的背景颜色以及字体颜色。 例如在 example in this link ,您可以看到代码的 x 轴(0,2,4,5..)和 y 轴(12,10,
我部署在 Weblogic 集群上的 Java 应用程序调用了如下两个 Web 服务。 • 它通过 HTTPS 向互联网上的外部应用程序发送 SOAP 客户端请求。(通过 Axis 1.4 创建的 J
我正在尝试为 x 和 y 设置 Axis ,但每次尝试时,热图都会缩小到绘图的一角。我试试 plt.xlim(0, 60) plt.ylim(0, 30) 我也试过: ax.set_ylim(0, 3
使用 DC js,尝试将 rowChart 设置为固定 X Axis 为 0-100。但是将其绘制为一条线? 我设置了 .elasticX(false) 并且看起来像上面那样。设置为 true 看起来
我有一些法语等级的学生成绩数据(双值,范围从 0 到 20)。 目前,在允许将日期作为 X 轴的散点图(用线连接点)上,我的 Y 轴上的成绩是双倍的,而 X 轴上是一系列学期结束日期。 使用以下间隔映
我正在尝试制作一个极坐标“sypder”图,但我在 Axis 标签方面遇到了一些问题。 xaxis 刻度标签似乎总是在 y Axis 网格下方的层上结束(字母被网格线覆盖,如下图所示),我希望它们在顶
我正在尝试使用ggplot2包绘制以下图形,但是以某种方式不会显示轴。刻度线在那里,而不仅仅是轴线。我使用了theme(axis.line=element_line())函数,但无法正常工作。 这是我
我是一名优秀的程序员,十分优秀!