Java调用Webservice数组参数传递有问题

String[] arr = new String[2];
arr[0]="abc";
arr[1]="def";
String str="myteststr";
Client client = new Client(new URL("http://xx.xx.xx.xx:9084/eee/infoService?wsdl"));
Object[] results = client.invoke("getStudentInfo",new Object[] {str,arr});
上面的代码是我调用java webservice的getStudentInfo方法。参数为一个字符串数组一个字符串,但是我在后台的
getStudentInfo方法打印的时候str参数能正常打印出来,但是arr这个字符串数组却打印的不对。只是打印出是一个String的对象。并且我从后台输出.length的时候竟然是1。但是我从客户端调用的时候明明传进去的是一个长度为2的字符串数组。求高手指导,
谢谢!!

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
RPCServiceClient调用webservice传递WebParam参数
org.apache.axis2.AxisFault: Unmarshalling Error: unexpected element (uri:"", local:"arg0"). Expected elements .....
java 调用 .net 发布 webservice 传递 byte[]
public static void MakeThumbnail(byte[] ImageCount, String thumbnailPath, int width, int height, String mode, String rename, String format) throws Exception { URL wsUrl = new URL(URL); HttpURLConnection conn = (HttpURLConnection) wsUrl.openConnection(); conn.setDoInput(true); conn.setDoOutput(true); conn.setRequestMethod("POST"); conn.setRequestProperty("Content-Type", "text/xml;charset=UTF-8"); OutputStream os = conn.getOutputStream(); // 请求体 String soap = "<soap:Envelope xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xmlns:xsd=\"http://www.w3.org/2001/XMLSchema\" xmlns:soap=\"http://schemas.xmlsoap.org/soap/envelope/\">" + "<soap:Body>" + "<MakeThumbnail xmlns=\"http://www.520shq.com/\">" + "<ImageCount>" + ImageCount + "</ImageCount>" + "<thumbnailPath>" + thumbnailPath + "</thumbnailPath>" + "<width>" + width + "</width>" + "<height>" + height + "</height>" + "<mode>" + mode + "</mode>" + "<rename>" + rename + "</rename>" + "<format>" + format + "</format>" + "</MakeThumbnail>" + "</soap:Body></soap:Envelope>"; os.write(soap.getBytes()); InputStream is = conn.getInputStream(); byte[] b = new byte[1024]; int len = 0; String xml = ""; while ((len = is.read(b)) != -1) { xml += new String(b, 0, len, "UTF-8"); } is.close(); os.close(); conn.disconnect(); 我只要传递byte[] 就会报400 求大神帮帮忙!
java客户端使用axis1.4jar包调用webService传递复杂参数
有如下一段WSDL,请问使用axis1.4jar包应该如何传递参数,谢谢。 ``` <xsd:complexType name="function"> <xsd:sequece> <xsd:element name="Head"> <xsd:sequece> <xsd:element name="e1"> <xsd:simpleType> ... </xsd:simpleType> </xsd:element> <xsd:element name="e2"> <xsd:simpleType> ... </xsd:simpleType> </xsd:element> </xsd:sequece> <xsd:element> </xsd:sequece> </xsd:complexType> ```
webservice通过url传递参数调用接口,参数中含“/”要怎么处理?
我现在在做一个调用企业QQ接口来发信息的平台,是通过webservice在url传递参数调用接口。。 但是短信内容中含斜杠时会干扰参数的传递,大神教我怎么解决啊? @GET @Path("/sendTips/{receivers}/{content}/{windowTitle}/{tipsTitle}/{tipsUrl}") @Produces ({MediaType.APPLICATION_JSON}) public String sendTips(@PathParam("receivers") String receivers, @PathParam("content") String content, @PathParam("windowsTitle") String windowsTitle, @PathParam("tipsTitle") String tipsTitle, @PathParam("tipsUrl") String tipsUrl) throws SystemException;
axis1.4调用webservice 传递自定义对象参数出错
调用客户端后出现: org.xml.sax.SAXException: Invalid element in cn.services.QueryEquipmentRequest - queryEquipmentRequest 客户端代码(其中queryEquipmentRequest,QueryEquipmentResponse是我自定义的对象): call.addParameter(new QName(nameSpace, "queryEquipmentRequest"), new QName(nameSpace, "queryEquipmentRequest"), ParameterMode.IN); // // @@需修改成对应的输出参数名 call.setReturnType(new QName(nameSpace, "queryEquipmentResponse"), QueryEquipmentResponse.class); // // // 需要根据xsd生成的bean,对输入输出的XSD文件定义的类型进行注册映射关系 //// // @@如本服务输入输出XSD文件中有四个自定义类型 queryEquipmentRequest、queryEquipmentResponse、deviceItem、deviceItemList,配置如下 QName queryEquipmentRequest = new QName(nameSpace, "queryEquipmentRequest"); call.registerTypeMapping(QueryEquipmentRequest.class, queryEquipmentRequest, new BeanSerializerFactory(QueryEquipmentRequest.class, queryEquipmentRequest), new BeanDeserializerFactory( QueryEquipmentRequest.class, queryEquipmentRequest)); // QName queryEquipmentResponse = new QName(nameSpace, "queryEquipmentResponse"); call.registerTypeMapping(QueryEquipmentResponse.class, queryEquipmentResponse, new BeanSerializerFactory(QueryEquipmentResponse.class, queryEquipmentResponse), new BeanDeserializerFactory( QueryEquipmentResponse.class, queryEquipmentResponse)); 服务端的wsdl文件为: <wsdl:definitions targetNamespace="http://gd.soa.csg.com"><!--WSDL created by Apache Axis version: 1.4 Built on Apr 22, 2006 (06:55:48 PDT)--><wsdl:types><schema elementFormDefault="qualified" targetNamespace="http://gd.soa.csg.com"><complexType name="queryEquipmentRequest"><sequence><element maxOccurs="1" minOccurs="0" name="id" type="xsd:string"/></sequence></complexType><element name="queryEquipmentRequest" type="impl:queryEquipmentRequest"/><complexType name="queryEquipmentResponse"><sequence><element name="replyCode" type="xsd:string"/></sequence></complexType><element name="queryEquipmentResponse" type="impl:queryEquipmentResponse"/></schema></wsdl:types><wsdl:message name="queryEquipmentResponse"><wsdl:part element="impl:queryEquipmentResponse" name="queryEquipmentResponse"/></wsdl:message><wsdl:message name="queryEquipmentRequest"><wsdl:part element="impl:queryEquipmentRequest" name="queryEquipmentRequest"/></wsdl:message><wsdl:portType name="QueryEquipment"><wsdl:operation name="queryEquipment" parameterOrder="queryEquipmentRequest"><wsdl:input message="impl:queryEquipmentRequest" name="queryEquipmentRequest"/><wsdl:output message="impl:queryEquipmentResponse" name="queryEquipmentResponse"/></wsdl:operation></wsdl:portType><wsdl:binding name="QueryEquipmentSoapBinding" type="impl:QueryEquipment"><wsdlsoap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/><wsdl:operation name="queryEquipment"><wsdlsoap:operation soapAction="http://gd.soa.csg.com/queryEquipment"/><wsdl:input name="queryEquipmentRequest"><wsdlsoap:body use="literal"/></wsdl:input><wsdl:output name="queryEquipmentResponse"><wsdlsoap:body use="literal"/></wsdl:output></wsdl:operation></wsdl:binding><wsdl:service name="QueryEquipment"><wsdl:port binding="impl:QueryEquipmentSoapBinding" name="QueryEquipment"><wsdlsoap:address location="http://127.0.0.1:8400/webServiceTest/services/QueryEquipment"/></wsdl:port></wsdl:service></wsdl:definitions>
求教一个向Webservice传递参数被转码的错误!
我用下面的方式调用一个webservice的方法,传递的strWhere这个参数里面写了个字段模糊匹配的sql语句" strWhere=IDCARD LIKE '%1234567890%' ",在将该参数向webservice传递过去后,webservice那边收到的字符串是将该字符串里面的第一个“%”和后面紧跟着的两位数字进行了转义,显示为“IDCARD LIKE '34567890%'”,其中的不可显示字符,其实是ascii码为12的字符!也就是说这样调用,“%”和后面紧跟的“12”被转义成一个字节了,本人刚学java,对这些编码转换的流程也搞不懂,一时不知道问题出在哪里,贴出代码,往各位大侠指导一下!谢谢! public static void main(String[] args) { // TODO Auto-generated method stub // 获取WebService数据 String strWhere = "strWhere=IDCARD LIKE '%1234567890%13'"; String s3 = HttpUtil.doPost("http://localhost:1739/bill.asmx", "HelloWorld", strWhere, "application/x-www-form-urlencoded;charset=utf-8;"); System.out.println(s3); System.exit(0); } public static String doPost(String ipStr, String url, String strWhere, String contentType) { String resultLine; OutputStream outputStream = null; OutputStreamWriter outputStreamWriter = null; System.out.println("sql=" + strWhere); InputStream inputStream = null; InputStreamReader inputStreamReader = null; BufferedReader bufferedReader = null; StringBuffer stringBuffer = new StringBuffer(); try { String strUrl = ipStr + "/" + url; URL realUrl = new URL(strUrl); URLConnection connection = realUrl.openConnection(); HttpURLConnection httpURLConnection = (HttpURLConnection) connection; httpURLConnection.setDoOutput(true); httpURLConnection.setRequestMethod("POST"); httpURLConnection.setRequestProperty("content-type", contentType); outputStream = httpURLConnection.getOutputStream(); outputStreamWriter = new OutputStreamWriter(outputStream); System.out.println("strWhere=" + strWhere); outputStreamWriter.write(strWhere);// ,0,strWhere.length() outputStreamWriter.flush(); if (httpURLConnection.getResponseCode() >= 300) { throw new Exception( "Http Request is not success,Response code is " + httpURLConnection.getResponseCode()); } inputStream = httpURLConnection.getInputStream(); inputStreamReader = new InputStreamReader(inputStream, "utf-8"); bufferedReader = new BufferedReader(inputStreamReader); while ((resultLine = bufferedReader.readLine()) != null) { System.out.println("返回的行=" + resultLine); if (!resultLine.trim().equals("")) { stringBuffer.append(resultLine).append("\n"); // 读完每行后换行 } } } catch (Exception e) { e.printStackTrace(); } return stringBuffer.toString(); }
cxf搭建webservice,传递javabean参数提示类转换错误
我用cxf(版本3.1.5)搭建了一个webservice,AsEntitymgttemplate是自定义的一个javabean对象,webservice方法传了一个这个参数。 package com.XXXX.XX.base.webservice @WebService public interface AmSynDataService { @WebMethod public AsEntitymgttemplate testAsEntitymgttemplate2(@WebParam(name = "temp") AsEntitymgttemplate temp); } package com.XXXX.XX.base.webservice @WebService public class AmSynDataServiceImp implements AmSynDataService{ @WebMethod public AsEntitymgttemplate testAsEntitymgttemplate2(@WebParam(name = "temp") AsEntitymgttemplate temp){ return new AsEntitymgttemplate(); } } 模拟客户端调用 JaxWsDynamicClientFactory dcf = JaxWsDynamicClientFactory.newInstance(); Client client = dcf.createClient("http://localhost:8089/test/services/AmSynDataService?wsdl"); client.invoke("testAsEntitymgttemplate2", new AsEntitymgttemplate() ); 这个自定义的类大概如下: package com.XXXX.XX.model.entity; @Data @XmlRootElement(namespace="http://com.XXXX.XX.model.entity") @XmlAccessorType(XmlAccessType.FIELD) public class AsEntitymgttemplate extends AsBaseEntity { /** * */ private static final long serialVersionUID = -7027445566997840698L; private Long id; private String name; private String entityname; } 现在调用这个webservice接口,总是提示对象转换错误, Caused by: java.lang.ClassCastException: com.XXXX.XX.model.entity.AsEntitymgttemplate cannot be cast to com.XXXX.XX.base.webservice.AsEntitymgttemplate 我的AsEntitymgttemplate对象明明是在entity包下面,为什么cxf一定要我放到webservice接口包下面呢? 是不是我哪里还需要在接口里或在javabean里定义?比如包名啥的,知道的朋友能否告知下,哎!
Axis2调用C#WebService的安全问题
<p>我们公司在调用服务提供方的WebService时.我先试着去访问了一下页面.结果那个页面先弹出了类似 局域网访问其他Windows系统的登陆框. 我输入了帐户密码之后才看到了WebService的发布页.</p> <p> </p> <p>我一直在做java 对WebService也不是太了解 希望各位能够说一下这个问题解的解决办法. 我还没能获得对方的WebService 如何向对方提供数据呢?</p> <p> </p> <p>也就是说我如何才能够将用户名密码传递给对方,来证明我是拥有访问权限的</p>
android调用wsdl参数值取不到
用安卓调用 javawebservice,以wsdl的形式,但是服务器端取不到传递的参数,具体代码如下,请高手帮忙!多谢 public static void getRemoteInfo(String phoneSec) { // 命名空间 // 调用的方法名称 String methodName = "login"; // EndPoint // SOAP Action String soapAction = nameSpace+methodName; // 指定WebService的命名空间和调用的方法名 SoapObject rpc = new SoapObject(nameSpace, methodName); // 设置需调用WebService接口需要传入的两个参数mobileCode、userId rpc.addProperty("userId", "lcq"); --这里的两个参数 rpc.addProperty("passWord", "123123123"); --这里的两个参数 // 生成调用WebService方法的SOAP请求信息,并指定SOAP的版本 SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(SoapEnvelope.VER10); envelope.bodyOut = rpc; // 设置是否调用的是dotNet开发的WebService envelope.dotNet = true; // 等价于envelope.bodyOut = rpc; envelope.setOutputSoapObject(rpc); HttpTransportSE transport = new HttpTransportSE(endPoint); try { // 调用WebService transport.call(soapAction, envelope); } catch (Exception e) { e.printStackTrace(); } // 获取返回的数据 SoapObject object = (SoapObject) envelope.bodyIn; // 获取返回的结果 String result = object.getProperty(0).toString(); // 将WebService返回的结果显示在TextView中 //resultView.setText(result); }
java调用service接口异常
<div class="iteye-blog-content-contain" style="font-size: 14px;"> <p style="margin-bottom: 10px; font-family: 楷体, Verdana, sans-serif, 宋体; line-height: 22px;">最近做个项目,要用java调用webservice接口,写个测试类就报错了,第一次弄这个,求大神指点,以下是代码及错误信息:</p> <p style="margin-bottom: 10px; font-family: 楷体, Verdana, sans-serif, 宋体; line-height: 22px;">try {<br style="padding: 0px; margin: 0px;">            String endpoint = "http://www.xdz.gov.cn:8080/system/services/UserService?wsdl";<br style="padding: 0px; margin: 0px;">            //直接引用远程的wsdl文件<br style="padding: 0px; margin: 0px;">            Service service = new Service();<br style="padding: 0px; margin: 0px;">           Call call = (Call)service.createCall();<br style="padding: 0px; margin: 0px;">           call.setTargetEndpointAddress(new URL(endpoint));<br style="padding: 0px; margin: 0px;">            call.setOperationName("userLogin");//WSDL里面描述的接口名称<br style="padding: 0px; margin: 0px;">            call.addParameter("servicesuserinfo", org.apache.axis.encoding.XMLType.XSD_STRING,<br style="padding: 0px; margin: 0px;">            javax.xml.rpc.ParameterMode.IN);//接口的参数<br style="padding: 0px; margin: 0px;">            call.addParameter("useraccount", org.apache.axis.encoding.XMLType.XSD_STRING,<br style="padding: 0px; margin: 0px;">                    javax.xml.rpc.ParameterMode.IN);//接口的参数<br style="padding: 0px; margin: 0px;">            call.addParameter("password", org.apache.axis.encoding.XMLType.XSD_STRING,<br style="padding: 0px; margin: 0px;">                    javax.xml.rpc.ParameterMode.IN);//接口的参数<br style="padding: 0px; margin: 0px;">            call.setReturnType(org.apache.axis.encoding.XMLType.XSD_STRING);//设置返回类型  <br style="padding: 0px; margin: 0px;"><br style="padding: 0px; margin: 0px;"><br style="padding: 0px; margin: 0px;">            String result = (String)call.invoke(new Object[]{PwdCrypt.encrypt(encode),"admin",PwdCrypt.encrypt("!2@:?+)JUXDZ^%&amp;*")});<br style="padding: 0px; margin: 0px;">            //给方法传递参数,并且调用方法<br style="padding: 0px; margin: 0px;">            System.out.println("result is "+result);<br style="padding: 0px; margin: 0px;">     }<br style="padding: 0px; margin: 0px;">     catch (Exception e) {<br style="padding: 0px; margin: 0px;">            e.printStackTrace();<br style="padding: 0px; margin: 0px;">     }<br style="padding: 0px; margin: 0px;">异常信息如下:</p> <p style="margin-bottom: 10px; font-family: 楷体, Verdana, sans-serif, 宋体; line-height: 22px;">log4j:ERROR Could not find value for key log4j.appender.R<br style="padding: 0px; margin: 0px;">log4j:ERROR Could not instantiate appender named "R".<br style="padding: 0px; margin: 0px;">[QC] INFO [main] org.apache.axis.client.Call.invoke(1853) | Mapping Exception to AxisFault<br style="padding: 0px; margin: 0px;">     AxisFault<br style="padding: 0px; margin: 0px;"> faultCode: {http://schemas.xmlsoap.org/soap/envelope/}Server.userException<br style="padding: 0px; margin: 0px;"> faultString: java.lang.reflect.InvocationTargetException<br style="padding: 0px; margin: 0px;"> faultActor: null<br style="padding: 0px; margin: 0px;"> faultDetail: <br style="padding: 0px; margin: 0px;">hostname: localhost.localdomain<br style="padding: 0px; margin: 0px;"><br style="padding: 0px; margin: 0px;"><br style="padding: 0px; margin: 0px;">java.lang.reflect.InvocationTargetException<br style="padding: 0px; margin: 0px;">at org.apache.axis.message.SOAPFaultBuilder.endElement(SOAPFaultBuilder.java:135)<br style="padding: 0px; margin: 0px;">at org.apache.axis.encoding.DeserializationContextImpl.endElement(DeserializationContextImpl.java:942)<br style="padding: 0px; margin: 0px;">at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.endElement(AbstractSAXParser.java:609)<br style="padding: 0px; margin: 0px;">at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanEndElement(XMLDocumentFragmentScannerImpl.java:1789)<br style="padding: 0px; margin: 0px;">at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:2965)<br style="padding: 0px; margin: 0px;">at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:606)<br style="padding: 0px; margin: 0px;">at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.next(XMLNSDocumentScannerImpl.java:117)<br style="padding: 0px; margin: 0px;">at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:510)<br style="padding: 0px; margin: 0px;">at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:848)<br style="padding: 0px; margin: 0px;">at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:777)<br style="padding: 0px; margin: 0px;">at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:141)<br style="padding: 0px; margin: 0px;">at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1213)<br style="padding: 0px; margin: 0px;">at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:649)<br style="padding: 0px; margin: 0px;">at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl.parse(SAXParserImpl.java:333)<br style="padding: 0px; margin: 0px;">at org.apache.axis.encoding.DeserializationContextImpl.parse(DeserializationContextImpl.java:232)<br style="padding: 0px; margin: 0px;">at org.apache.axis.SOAPPart.getAsSOAPEnvelope(SOAPPart.java:546)<br style="padding: 0px; margin: 0px;">at org.apache.axis.Message.getSOAPEnvelope(Message.java:377)<br style="padding: 0px; margin: 0px;">at org.apache.axis.client.Call.invokeEngine(Call.java:2132)<br style="padding: 0px; margin: 0px;">at org.apache.axis.client.Call.invoke(Call.java:2102)<br style="padding: 0px; margin: 0px;">at org.apache.axis.client.Call.invoke(Call.java:1851)<br style="padding: 0px; margin: 0px;">at org.apache.axis.client.Call.invoke(Call.java:1777)<br style="padding: 0px; margin: 0px;">at org.apache.axis.client.Call.invoke(Call.java:1315)<br style="padding: 0px; margin: 0px;">at com.hz.sunday.gaoxinfccrm.utils.HttpRequestUtil.main(HttpRequestUtil.java:116)</p> </div>
java 怎样调用.net 写的webservice
大家好,请问java怎样调用.net写的webservice,怎样传递参数和接收对方返回的复杂类型? 能不能给个具体的例子,谢谢。 wsdl文件结构如下: <s:element name="GetInfoOfIdAndTitle"> <s:complexType> <s:sequence> <s:element minOccurs="0" maxOccurs="1" name="mInfoId" type="s:string" /> <s:element minOccurs="0" maxOccurs="1" name="mTitle" type="s:string" /> </s:sequence> </s:complexType> </s:element> <s:element name="GetInfoOfIdAndTitleResponse"> <s:complexType> <s:sequence> <s:element minOccurs="0" maxOccurs="1" name="GetInfoOfIdAndTitleResult" type="tns:ArrayOfWSInfo" /> </s:sequence> </s:complexType> </s:element> <s:complexType name="ArrayOfWSInfo"> <s:sequence> <s:element minOccurs="0" maxOccurs="unbounded" name="WSInfo" nillable="true" type="tns:WSInfo" /> </s:sequence> </s:complexType> <s:complexType name="WSInfo"> <s:sequence> <s:element minOccurs="0" maxOccurs="1" name="iCatalog" type="s:string" /> <s:element minOccurs="0" maxOccurs="1" name="iArea" type="s:string" /> <s:element minOccurs="0" maxOccurs="1" name="iTel" type="s:string" /> <s:element minOccurs="0" maxOccurs="1" name="InfoId" type="s:string" /> <s:element minOccurs="0" maxOccurs="1" name="Title" type="s:string" /> <s:element minOccurs="0" maxOccurs="1" name="Detail" type="s:string" /> <s:element minOccurs="0" maxOccurs="1" name="Address" type="s:string" /> <s:element minOccurs="0" maxOccurs="1" name="Web" type="s:string" /> <s:element minOccurs="0" maxOccurs="1" name="Email" type="s:string" /> <s:element minOccurs="0" maxOccurs="1" name="Specific" type="s:string" /> <s:element minOccurs="0" maxOccurs="1" name="ParaentInfoId" type="s:string" /> <s:element minOccurs="1" maxOccurs="1" name="ExpirationTime" type="s:dateTime" /> <s:element minOccurs="1" maxOccurs="1" name="EffectiveTime" type="s:dateTime" /> <s:element minOccurs="0" maxOccurs="1" name="Coupon" type="s:string" /> </s:sequence> </s:complexType>
CXF动态生成client调用服务端,服务端收到参数为空,请教如何解决?
请教大家一个问题。 java做客户端,c#做服务端。java用apache.cxf的DynamicClientFactory或者JaxWsDynamicClientFactory根据wsdl生成client,调用服务端传递UserSyncData对象,服务端方法收到的参数对象是null,请问大家有解决办法吗?(需求:一定要用动态生成客户端的方式) 传递的对象UserSyncData 是jdk或者用cxf的wsdl2java在本地生成的pojo,服务端接受的参数就是空。如果用代理服务类的方式调用,是可以成功的,可以正常收到参数。但是我的项目要求用动态方式调用,所以来请教大家 java中调用的代码 ![CSDN移动问答][1] .net服务端方法:打断点看到userSyncData为null ![CSDN移动问答][2] [1]: http://c.hiphotos.baidu.com/zhidao/pic/item/adaf2edda3cc7cd95ffea4b53b01213fb90e918f.jpg [2]: http://c.hiphotos.baidu.com/zhidao/pic/item/738b4710b912c8fce13d66a1fe039245d788218b.jpg 我自己分析可能是pojo对象在java和c#中定义要达成某种规范,仅是猜测,也不知道应该怎么做。以前和同时调试hessian的时候,要求java和c#的pojo必须一模一样,包括namespace也必须一样,我按这个方法试了以后也没用。
java调用Web Service时,代码报错org.xml.sax.SAXException
![图片说明](https://img-ask.csdn.net/upload/201612/07/1481101881_669159.png) 程序要用的lib是老师以前给的,其实我也不知道哪些是不需要的就全加进去了。我加进去的lib如上图。 代码如下,调用服务的网站为www.gpsso.com,我想调用里面的快递查询的方法,然后返回查询到的物流信息。 求大神帮忙改改错,或者能帮忙写个例子。 谢谢大家了 import java.util.LinkedList; import java.util.List; import java.util.Map; import java.util.Scanner; import java.util.Vector; import javax.xml.namespace.QName; import org.apache.axis.client.Call; import org.apache.axis.client.Service; import org.apache.axis.encoding.XMLType; public class PutExpress { private String url = "http://www.gpsso.com/webservice/kuaidi/kuaidi.asmx";;//提供接口的地址 private String soapaction = "http://gpsso.com/";; //域名,这是在server定义的 private String operationName = "KuaidiQuery"; public PutExpress() { Scanner in = new Scanner(System.in); String Compay=in.nextLine(); String OrderNo=in.nextLine(); Service service=new Service(); try{ Call call=(Call)service.createCall(); call.setTargetEndpointAddress(url); call.setOperationName(new QName(soapaction,operationName)); //设置要调用哪个方法 call.addParameter(new QName(soapaction,"Compay"), //设置要传递的参数 org.apache.axis.encoding.XMLType.XSD_STRING, javax.xml.rpc.ParameterMode.IN); call.addParameter(new QName(soapaction,"OrderNo"), //设置要传递的参数 org.apache.axis.encoding.XMLType.XSD_STRING, javax.xml.rpc.ParameterMode.IN); call.setReturnType(new QName(soapaction,operationName),Vector.class); //要返回的数据类型(自定义类型) //call.setReturnType(org.apache.axis.encoding.XMLType.XSD_STRING);//(标准的类型) call.setUseSOAPAction(true); call.setSOAPActionURI(soapaction + operationName); Vector v=(Vector)call.invoke(new Object[]{Compay,OrderNo});//调用方法并传递参数 for(int i=0;i<v.size();i++) { System.out.println(v.get(i)); } }catch(Exception ex) { ex.printStackTrace(); } } public static void main(String args[]) { PutExpress pw=new PutExpress(); } } 我是刚接触到web service的菜鸟,希望能有大大帮忙解决一下。
中间件的问题,求大神解惑
公司有多个系统,各系统之间需要进行信息交互。如果每两个系统之间用webService、API等技术进行交互的话,耦合度太高,如果一条数据经过多个系统传递,那么这条数据出错的话查找起来也会很麻烦。所以决定使用一个中间件平台,每个系统需要传递的数据都集中在中间件平台,然后再调用接口把数据传到另一个系统。如下图。市场的中间件有没有好的可以推荐,最重要的是稳定安全,价格大概多少。如果自己用java搭一个简易的中间件又怎么搭呢?求大神解惑
CXF入门问题,怎样在客户端给服务器端传递一个对象 ?
我的服务器端: User对象 UserService是@webService 它包含两个方法:addUser和getUser。 现在出现一个问题,我在客户端调用的时候,addUser(User user)可以直接给服务器传一个User对象,并且服务器端正常接收。 但是现在我getUser,客户端接收到的却是null,但是我的服务器端已经发送sql语句了,就是说服务器端取到数据了,但是没有传给客户端! 这是怎么回事呢?是不是需要什么特殊设置? 下面是我的代码: User: @XmlAccessorType(XmlAccessType.FIELD) @Entity @Table(name="T_User") public class User implements java.io.Serializable{ private static final long serialVersionUID = -7351729135012380019L; @Id @GeneratedValue private int id; private String username; private String password; ..... ... (中间有个UserDao层,可以忽略,那里没有进行任何业务封装,只是传值而已。) @WebService(endpointInterface="service.UserService") public class UserServiceImpl implements UserService { @Resource(name="userDao") private UserDao userDao; public void save(User user, boolean flag) { userDao.add(user); } public User get(int id) { User user = userDao.get(id); return user; } ... ....
终于明白阿里百度这样的大公司,为什么面试经常拿ThreadLocal考验求职者了
点击上面↑「爱开发」关注我们每晚10点,捕获技术思考和创业资源洞察什么是ThreadLocalThreadLocal是一个本地线程副本变量工具类,各个线程都拥有一份线程私有的数
程序员必须掌握的核心算法有哪些?
由于我之前一直强调数据结构以及算法学习的重要性,所以就有一些读者经常问我,数据结构与算法应该要学习到哪个程度呢?,说实话,这个问题我不知道要怎么回答你,主要取决于你想学习到哪些程度,不过针对这个问题,我稍微总结一下我学过的算法知识点,以及我觉得值得学习的算法。这些算法与数据结构的学习大多数是零散的,并没有一本把他们全部覆盖的书籍。下面是我觉得值得学习的一些算法以及数据结构,当然,我也会整理一些看过...
《奇巧淫技》系列-python!!每天早上八点自动发送天气预报邮件到QQ邮箱
此博客仅为我业余记录文章所用,发布到此,仅供网友阅读参考,如有侵权,请通知我,我会删掉。 补充 有不少读者留言说本文章没有用,因为天气预报直接打开手机就可以收到了,为何要多此一举发送到邮箱呢!!!那我在这里只能说:因为你没用,所以你没用!!! 这里主要介绍的是思路,不是天气预报!不是天气预报!!不是天气预报!!!天气预报只是用于举例。请各位不要再刚了!!! 下面是我会用到的两个场景: 每日下
面试官问我:什么是消息队列?什么场景需要他?用了会出现什么问题?
你知道的越多,你不知道的越多 点赞再看,养成习惯 GitHub上已经开源 https://github.com/JavaFamily 有一线大厂面试点脑图、个人联系方式,欢迎Star和完善 前言 消息队列在互联网技术存储方面使用如此广泛,几乎所有的后端技术面试官都要在消息队列的使用和原理方面对小伙伴们进行360°的刁难。 作为一个在互联网公司面一次拿一次Offer的面霸,打败了无数
8年经验面试官详解 Java 面试秘诀
    作者 | 胡书敏 责编 | 刘静 出品 | CSDN(ID:CSDNnews) 本人目前在一家知名外企担任架构师,而且最近八年来,在多家外企和互联网公司担任Java技术面试官,前后累计面试了有两三百位候选人。在本文里,就将结合本人的面试经验,针对Java初学者、Java初级开发和Java开发,给出若干准备简历和准备面试的建议。   Java程序员准备和投递简历的实
究竟你适不适合买Mac?
我清晰的记得,刚买的macbook pro回到家,开机后第一件事情,就是上了淘宝网,花了500元钱,找了一个上门维修电脑的师傅,上门给我装了一个windows系统。。。。。。 表砍我。。。 当时买mac的初衷,只是想要个固态硬盘的笔记本,用来运行一些复杂的扑克软件。而看了当时所有的SSD笔记本后,最终决定,还是买个好(xiong)看(da)的。 已经有好几个朋友问我mba怎么样了,所以今天尽量客观
程序员一般通过什么途径接私活?
二哥,你好,我想知道一般程序猿都如何接私活,我也想接,能告诉我一些方法吗? 上面是一个读者“烦不烦”问我的一个问题。其实不止是“烦不烦”,还有很多读者问过我类似这样的问题。 我接的私活不算多,挣到的钱也没有多少,加起来不到 20W。说实话,这个数目说出来我是有点心虚的,毕竟太少了,大家轻喷。但我想,恰好配得上“一般程序员”这个称号啊。毕竟苍蝇再小也是肉,我也算是有经验的人了。 唾弃接私活、做外
大学四年自学走来,这些珍藏的「实用工具/学习网站」我全贡献出来了
知乎高赞:文中列举了互联网一线大厂程序员都在用的工具集合,涉及面非常广,小白和老手都可以进来看看,或许有新收获。
《阿里巴巴开发手册》读书笔记-编程规约
Java编程规约命名风格 命名风格 类名使用UpperCamelCase风格 方法名,参数名,成员变量,局部变量都统一使用lowerCamelcase风格 常量命名全部大写,单词间用下划线隔开, 力求语义表达完整清楚,不要嫌名字长 ...
Python爬虫爬取淘宝,京东商品信息
小编是一个理科生,不善长说一些废话。简单介绍下原理然后直接上代码。 使用的工具(Python+pycharm2019.3+selenium+xpath+chromedriver)其中要使用pycharm也可以私聊我selenium是一个框架可以通过pip下载 pip install selenium -i https://pypi.tuna.tsinghua.edu.cn/simple/ 
阿里程序员写了一个新手都写不出的低级bug,被骂惨了。
你知道的越多,你不知道的越多 点赞再看,养成习惯 本文 GitHub https://github.com/JavaFamily 已收录,有一线大厂面试点思维导图,也整理了很多我的文档,欢迎Star和完善,大家面试可以参照考点复习,希望我们一起有点东西。 前前言 为啥今天有个前前言呢? 因为你们的丙丙啊,昨天有牌面了哟,直接被微信官方推荐,知乎推荐,也就仅仅是还行吧(心里乐开花)
Java工作4年来应聘要16K最后没要,细节如下。。。
前奏: 今天2B哥和大家分享一位前几天面试的一位应聘者,工作4年26岁,统招本科。 以下就是他的简历和面试情况。 基本情况: 专业技能: 1、&nbsp;熟悉Sping了解SpringMVC、SpringBoot、Mybatis等框架、了解SpringCloud微服务 2、&nbsp;熟悉常用项目管理工具:SVN、GIT、MAVEN、Jenkins 3、&nbsp;熟悉Nginx、tomca
Python爬虫精简步骤1 获取数据
爬虫的工作分为四步: 1.获取数据。爬虫程序会根据我们提供的网址,向服务器发起请求,然后返回数据。 2.解析数据。爬虫程序会把服务器返回的数据解析成我们能读懂的格式。 3.提取数据。爬虫程序再从中提取出我们需要的数据。 4.储存数据。爬虫程序把这些有用的数据保存起来,便于你日后的使用和分析。 这一篇的内容就是:获取数据。 首先,我们将会利用一个强大的库——requests来获取数据。 在电脑上安装
Python绘图,圣诞树,花,爱心 | Turtle篇
1.画圣诞树 import turtle screen = turtle.Screen() screen.setup(800,600) circle = turtle.Turtle() circle.shape('circle') circle.color('red') circle.speed('fastest') circle.up() square = turtle.Turtle()
作为一个程序员,CPU的这些硬核知识你必须会!
CPU对每个程序员来说,是个既熟悉又陌生的东西? 如果你只知道CPU是中央处理器的话,那可能对你并没有什么用,那么作为程序员的我们,必须要搞懂的就是CPU这家伙是如何运行的,尤其要搞懂它里面的寄存器是怎么一回事,因为这将让你从底层明白程序的运行机制。 随我一起,来好好认识下CPU这货吧 把CPU掰开来看 对于CPU来说,我们首先就要搞明白它是怎么回事,也就是它的内部构造,当然,CPU那么牛的一个东
破14亿,Python分析我国存在哪些人口危机!
2020年1月17日,国家统计局发布了2019年国民经济报告,报告中指出我国人口突破14亿。 猪哥的朋友圈被14亿人口刷屏,但是很多人并没有看到我国复杂的人口问题:老龄化、男女比例失衡、生育率下降、人口红利下降等。 今天我们就来分析一下我们国家的人口数据吧! 更多有趣分析教程,扫描下方二维码关注vx公号「裸睡的猪」 即可查看! 一、背景 1.人口突破14亿 2020年1月17日,国家统计局发布
听说想当黑客的都玩过这个Monyer游戏(1~14攻略)
第零关 进入传送门开始第0关(游戏链接) 请点击链接进入第1关: 连接在左边→ ←连接在右边 看不到啊。。。。(只能看到一堆大佬做完的留名,也能看到菜鸡的我,在后面~~) 直接fn+f12吧 &lt;span&gt;连接在左边→&lt;/span&gt; &lt;a href="first.php"&gt;&lt;/a&gt; &lt;span&gt;←连接在右边&lt;/span&gt; o
在家远程办公效率低?那你一定要收好这个「在家办公」神器!
相信大家都已经收到国务院延长春节假期的消息,接下来,在家远程办公可能将会持续一段时间。 但是问题来了。远程办公不是人在电脑前就当坐班了,相反,对于沟通效率,文件协作,以及信息安全都有着极高的要求。有着非常多的挑战,比如: 1在异地互相不见面的会议上,如何提高沟通效率? 2文件之间的来往反馈如何做到及时性?如何保证信息安全? 3如何规划安排每天工作,以及如何进行成果验收? ......
作为一个程序员,内存和磁盘的这些事情,你不得不知道啊!!!
截止目前,我已经分享了如下几篇文章: 一个程序在计算机中是如何运行的?超级干货!!! 作为一个程序员,CPU的这些硬核知识你必须会! 作为一个程序员,内存的这些硬核知识你必须懂! 这些知识可以说是我们之前都不太重视的基础知识,可能大家在上大学的时候都学习过了,但是嘞,当时由于老师讲解的没那么有趣,又加上这些知识本身就比较枯燥,所以嘞,大家当初几乎等于没学。 再说啦,学习这些,也看不出来有什么用啊!
别低估自己的直觉,也别高估自己的智商
所有群全部吵翻天,朋友圈全部沦陷,公众号疯狂转发。这两周没怎么发原创,只发新闻,可能有人注意到了。我不是懒,是文章写了却没发,因为大家的关注力始终在这次的疫情上面,发了也没人看。当然,我...
这个世界上人真的分三六九等,你信吗?
偶然间,在知乎上看到一个问题 一时间,勾起了我深深的回忆。 以前在厂里打过两次工,做过家教,干过辅导班,做过中介。零下几度的晚上,贴过广告,满脸、满手地长冻疮。   再回首那段岁月,虽然苦,但让我学会了坚持和忍耐。让我明白了,在这个世界上,无论环境多么的恶劣,只要心存希望,星星之火,亦可燎原。   下文是原回答,希望能对你能有所启发。   如果我说,这个世界上人真的分三六九等,
为什么听过很多道理,依然过不好这一生?
记录学习笔记是一个重要的习惯,不希望学习过的东西成为过眼云烟。做总结的同时也是一次复盘思考的过程。 本文是根据阅读得到 App上《万维钢·精英日课》部分文章后所做的一点笔记和思考。学习是一个系统的过程,思维模型的建立需要相对完整的学习和思考过程。以下观点是在碎片化阅读后总结的一点心得总结。
B 站上有哪些很好的学习资源?
哇说起B站,在小九眼里就是宝藏般的存在,放年假宅在家时一天刷6、7个小时不在话下,更别提今年的跨年晚会,我简直是跪着看完的!! 最早大家聚在在B站是为了追番,再后来我在上面刷欧美新歌和漂亮小姐姐的舞蹈视频,最近两年我和周围的朋友们已经把B站当作学习教室了,而且学习成本还免费,真是个励志的好平台ヽ(.◕ฺˇд ˇ◕ฺ;)ノ 下面我们就来盘点一下B站上优质的学习资源: 综合类 Oeasy: 综合
如何优雅地打印一个Java对象?
你好呀,我是沉默王二,一个和黄家驹一样身高,和刘德华一样颜值的程序员。虽然已经写了十多年的 Java 代码,但仍然觉得自己是个菜鸟(请允许我惭愧一下)。 在一个月黑风高的夜晚,我思前想后,觉得再也不能这么蹉跎下去了。于是痛下决心,准备通过输出的方式倒逼输入,以此来修炼自己的内功,从而进阶成为一名真正意义上的大神。与此同时,希望这些文章能够帮助到更多的读者,让大家在学习的路上不再寂寞、空虚和冷。 ...
雷火神山直播超两亿,Web播放器事件监听是怎么实现的?
Web播放器解决了在手机浏览器和PC浏览器上播放音视频数据的问题,让视音频内容可以不依赖用户安装App,就能进行播放以及在社交平台进行传播。在视频业务大数据平台中,播放数据的统计分析非常重要,所以Web播放器在使用过程中,需要对其内部的数据进行收集并上报至服务端,此时,就需要对发生在其内部的一些播放行为进行事件监听。 那么Web播放器事件监听是怎么实现的呢? 01 监听事件明细表 名
3万字总结,Mysql优化之精髓
本文知识点较多,篇幅较长,请耐心学习 MySQL已经成为时下关系型数据库产品的中坚力量,备受互联网大厂的青睐,出门面试想进BAT,想拿高工资,不会点MySQL优化知识,拿offer的成功率会大大下降。 为什么要优化 系统的吞吐量瓶颈往往出现在数据库的访问速度上 随着应用程序的运行,数据库的中的数据会越来越多,处理时间会相应变慢 数据是存放在磁盘上的,读写速度无法和内存相比 如何优化 设计
Linux 命令(122)—— watch 命令
1.命令简介 2.命令格式 3.选项说明 4.常用示例 参考文献 [1] watch(1) manual
Linux 命令(121)—— cal 命令
1.命令简介 2.命令格式 3.选项说明 4.常用示例 参考文献 [1] cal(1) manual
记jsp+servlet+jdbc实现的新闻管理系统
1.工具:eclipse+SQLyog 2.介绍:实现的内容就是显示新闻的基本信息,然后一个增删改查的操作。 3.数据库表设计 列名 中文名称 数据类型 长度 非空 newsId 文章ID int 11 √ newsTitle 文章标题 varchar 20 √ newsContent 文章内容 text newsStatus 是否审核 varchar 10 news...
Python新型冠状病毒疫情数据自动爬取+统计+发送报告+数据屏幕(三)发送篇
今天介绍的项目是使用 Itchat 发送统计报告 项目功能设计: 定时爬取疫情数据存入Mysql 进行数据分析制作疫情报告 使用itchat给亲人朋友发送分析报告(本文) 基于Django做数据屏幕 使用Tableau做数据分析 来看看最终效果 目前已经完成,预计2月12日前更新 使用 itchat 发送数据统计报告 itchat 是一个基于 web微信的一个框架,但微信官方并不允
作为程序员的我,大学四年一直自学,全靠这些实用工具和学习网站!
我本人因为高中沉迷于爱情,导致学业荒废,后来高考,毫无疑问进入了一所普普通通的大学,实在惭愧...... 我又是那么好强,现在学历不行,没办法改变的事情了,所以,进入大学开始,我就下定决心,一定要让自己掌握更多的技能,尤其选择了计算机这个行业,一定要多学习技术。 在进入大学学习不久后,我就认清了一个现实:我这个大学的整体教学质量和学习风气,真的一言难尽,懂的人自然知道怎么回事? 怎么办?我该如何更好的提升
新来个技术总监,禁止我们使用Lombok!
我有个学弟,在一家小型互联网公司做Java后端开发,最近他们公司新来了一个技术总监,这位技术总监对技术细节很看重,一来公司之后就推出了很多"政策",比如定义了很多开发规范、日志规范、甚至是要求大家统一使用某一款IDE。 但是这些都不是我这个学弟和我吐槽的点,他真正和我吐槽的是,他很不能理解,这位新来的技术总监竟然禁止公司内部所有开发使用Lombok。但是又没给出十分明确的,可以让人信服的理由。 于...
前端JS初级面试题二 (。•ˇ‸ˇ•。)老铁们!快来瞧瞧自己都会了么
1. 传统事件绑定和符合W3C标准的事件绑定有什么区别? 传统事件绑定 &lt;div onclick=""&gt;123&lt;/div&gt; div1.onclick = function(){}; &lt;button onmouseover=""&gt;&lt;/button&gt; 注意: 如果给同一个元素绑定了两次或多次相同类型的事件,那么后面的绑定会覆盖前面的绑定 (不支持DOM事...
2020金三银四,一篇文章教你如何征服面试官,拿到offer
2020年,跳槽面试就靠它们了,现在每天刷题,看源码文档,最近看的这些题目还是有些难度,有一部分我都要好好想一想才能回答出来,或者回答不出来,总的来说知识宽度够了深度还跟不上。所以要重点突破下底层的东西。这篇文章我总结了很久,希望对正在准备面试的同仁们有点帮助。没错我就是传说中的面霸!! 一. 面试准备 首先,是笔试题,这点是初级程序员绕不过去的坎。 笔试题一般的公司都会出的,除非你是大牛,可以选...
相关热词 c#导入fbx c#中屏蔽键盘某个键 c#正态概率密度 c#和数据库登陆界面设计 c# 高斯消去法 c# codedom c#读取cad文件文本 c# 控制全局鼠标移动 c# temp 目录 bytes初始化 c#
立即提问