如何为SOAP Java webservice传递字符串数组
我有一个Java的SOAP Web服务。 我需要知道如何将字符串数组传递给Web服务器 我在web上找到了以下代码,这些代码应该用作要传递的参数如何为SOAP Java webservice传递字符串数组,java,arrays,soap,Java,Arrays,Soap,我有一个Java的SOAP Web服务。 我需要知道如何将字符串数组传递给Web服务器 我在web上找到了以下代码,这些代码应该用作要传递的参数 public class SoapStringVector extends ArrayList<String> implements KvmSerializable { private static final long serialVersionUID = 5667288129792987329L; public Ob
public class SoapStringVector extends ArrayList<String> implements KvmSerializable
{
private static final long serialVersionUID = 5667288129792987329L;
public Object getProperty(int arg0)
{
return this.get( arg0 );
}
public int getPropertyCount()
{
return this.size();
}
@SuppressWarnings("rawtypes")
public void getPropertyInfo(int arg0, Hashtable arg1, PropertyInfo arg2)
{
arg2.name = "string";
arg2.type = PropertyInfo.STRING_CLASS;
}
public void setProperty(int arg0, Object arg1)
{
this.add(arg1.toString());
}
}
公共类SoapStringVector扩展ArrayList实现KVMSerizable
{
私有静态最终长serialVersionUID=5667288129792987329L;
公共对象getProperty(int arg0)
{
返回此.get(arg0);
}
public int getPropertyCount()
{
返回此.size();
}
@抑制警告(“原始类型”)
public void getPropertyInfo(int arg0、哈希表arg1、PropertyInfo arg2)
{
arg2.name=“字符串”;
arg2.type=PropertyInfo.STRING\u类;
}
公共void setProperty(int arg0,对象arg1)
{
this.add(arg1.toString());
}
}
在客户端:
SoapStringVector ingredientsObj = new SoapStringVector();
for( int i = 0; i < ingridients.size(); i++ )
{
ingredientsObj.add( ingridients.get(i) );
}
PropertyInfo ingredientsProperyInfo = new PropertyInfo();
ingredientsProperyInfo.setName( "recipeIngredients" );
ingredientsProperyInfo.setValue( ingredientsObj );
ingredientsProperyInfo.setType( ingredientsObj.getClass() );
_envelope.addMapping( "", "recipeIngredients", new SoapStringVector().getClass() );
SoapStringVector ingredientsObj=新的SoapStringVector();
对于(int i=0;i
但是这种参数的参数类型应该是什么呢
还有其他方法吗?对于SOAP web服务,您应该遵循“契约优先”的方法——设计WSDL和XSD,然后生成Java代码。你所说的“参数类型”,XSD类型是什么意思?如果在信封中的客户机上传递向量,在服务器中的函数原型中。。。我们应该如何接受这些参数?String[],Vector?@Yoav:看一看my:它给出了一个提示,当使用JAXB/JAX-WS时如何传递字符串/整数数组。