ObjectFactory factory = new ObjectFactory();

时间:2015-03-14 08:15:16

标签: java web-services wcf

我需要从java客户端将数据协定传递给我的wcf webservice。数据合同有2个字段都是字符串。创建代理后,我正在尝试的代码位于

之下
FileTransfer fs = new FileTransfer(); // 1 -- This is my service
IFileTransfer ifs = fs.getBasicHttpBindingIFileTransfer();//2
ServiceMessage request = new ServiceMessage();//3
ObjectFactory factory = new ObjectFactory();//4
JAXBElement<String> createString2 = factory.createString("myimg.txt");//5
request.setFileName(createString2);//6
System.out.println(createString2.toString()); //7

这里serviceMessage是datacontract。在输入&#39;请求。&#39;在eclipse中我看到一个setfilename方法(filename是数据库之一)来添加我想要传递的字符串。但它只接受JAXBElement类型而不接受字符串。所以在第4行和第5行中,我尝试将我的字符串转换为JAXBElement并将其传递给服务。但是在第7行中,我没有读取第5行中设置的文件名。而是第7行打印的内容类似于javax.xml.bind.JAXBElement@24ee50b4。

我无能为力..请帮忙

1 个答案:

答案 0 :(得分:0)

尝试

System.out.println(createString2.getValue());

因为您要打印值String,而不是JAXBElement实例。