Tag: web services

Axis2和Webservices:文件上传

我正在尝试使用Axis2编写一个简单的Web服务。 它的行为非常简单:它在输入中获取一个文件并存储它。 我已经尝试了几件事来做这个“简单”的文件上传服务。 最初,我还尝试使用Java2WSDL和WSDL2Java来创建WSDL文件,并希望传递java.io.File数据类型的客户端。 当然它没有用。 我现在正尝试使用SOAP附件和MTOM或SwA上传文件。 我在axis2 \ WEB-INF \ conf \ axis2.xml中启用了它们 服务器端,我的服务操作的签名是: public String uploadAttachment(OMElement omEle); 这是使用Java2WSDL工具生成的WSDL: 客户端,我试图打电话给服务: Options options = new Options(); options.setTo(new EndpointReference(“http://localhost:8080/axis2/services/ImportModule”)); options.setProperty(Constants.Configuration.ENABLE_SWA, Constants.VALUE_TRUE); options.setTransportInProtocol(Constants.TRANSPORT_HTTP); options.setSoapVersionURI(SOAP11Constants.SOAP_ENVELOPE_NAMESPACE_URI); ServiceClient sender = new ServiceClient(null,null); sender.setOptions(options); OperationClient mepClient = sender.createClient(ServiceClient.ANON_OUT_IN_OP); MessageContext mc = new MessageContext(); SOAPFactory factory = OMAbstractFactory.getSOAP12Factory(); SOAPEnvelope env = factory.getDefaultEnvelope(); mc.setEnvelope(env); […]

自定义Jerseyerror handling,如何在客户端捕获响应?

我正在尝试在我的webservice上进行一些自定义error handling。 在我的webservice中,我创建了一个自定义的Exception类,扩展了WebApplicationException,如JAX-RS / Jersey中所描述的, 如何自定义error handling? : public class InternalServerErrorException extends WebApplicationException { public InternalServerErrorException(String message) { super(Response.status(Response.Status.INTERNAL_SERVER_ERROR) .header(“errorMessage”, message).type(MediaType.TEXT_PLAIN).build()); System.out.println(message); } } 为了测试,我有一个简单的国家/地区服务,它提供了一个国家列表。 我确保测试抛出InternalServerErrorException会发生错误: @GET @Override @Path(“countries”) @Produces({“application/xml”}) public List findAll() { try { int i = Integer.parseInt(“moo”); //<– generate error List countries = super.findAll(); return countries; } catch (Exception ex) { throw […]

轴客户端存根超时的问题

我正在编写一个使用Web服务连接远程服务器的应用程序。我已经编写了一个ping函数的方法来确定服务器是否在线(即它提供了可以使用host:port访问的Web服务).I我执行一个简单的Web服务,超时2秒(在我打电话之前作为存根类中的选项提供)。理想情况下,调用应该在2秒内返回,这样我就可以确定服务器是启动还是关闭。但在某些情况下它需要超过2秒。 任何人都可以帮我弄清楚为什么会发生这种情况吗?有没有办法确保超时值得到尊重? 谢谢,下跌

在黑莓模拟器上运行Web服务时出错

我正在尝试从我开发的BlackBerry应用程序访问Web服务。 但是,当我运行应用程序时,我得到了 “App Error 104 Uncaught:NullPointerException” 我无法调试,因为一些奇怪的原因我的调试器在我开始调试时自动关闭。 关于可能是什么原因的任何建议? 我想提一下,我收到了来自BlackBerry的三个.csi签名文件,但每当我尝试签署该应用程序时,它都会失败: 代码签名注册请求中的签名信息的长度不合适 。 这个错误可能是由于签署申请? 这是我到目前为止所做的: package mypackage; import java.io.DataInputStream; import java.io.DataOutputStream; import java.io.IOException; import java.io.InputStream; import java.io.OutputStream; import java.rmi.RemoteException; import java.util.Hashtable; import javacard.framework.UserException; import javax.microedition.io.Connector; import javax.microedition.io.HttpConnection; import javax.microedition.location.Location; import javax.microedition.location.LocationProvider; import org.kobjects.base64.Base64; import org.ksoap2.SoapEnvelope; import org.ksoap2.serialization.SoapObject; import org.ksoap2.serialization.SoapPrimitive; import org.ksoap2.serialization.SoapSerializationEnvelope; import org.ksoap2.transport.HttpTransport; import org.xmlpull.v1.XmlPullParserException; import net.rim.device.api.system.*; […]

SSLHandshakeException:握手期间远程主机关闭连接

论坛充满了这个问题,但我找不到解决方案。 我尝试连接WS但没有任何成功。 我试图更新cacerts文件没有任何效果。 日志是: Allow unsafe renegotiation: false Allow legacy hello messages: true Is initial handshake: true Is secure renegotiation: false %% No cached client session *** ClientHello, TLSv1 RandomCookie: GMT: 1507108654 bytes = { 133, 135, 81, 148, 186, 186, 146, 23, 28, 240, 158, 152, 139, 167, 209, 225, 54, 253, 112, 118, […]

下载由java webservice(POST)流式传输的pdf

我有一个由POST方法调用的web服务: @Path(“/ficheAction/”) @POST @Consumes({ MediaType.APPLICATION_JSON }) @Produces(“application/pdf”) public Response ficheAction(final ParamSyntheseFicheActionDto paramSyntheseFicheAction) throws EngineException { […] return Response.ok(output.toByteArray(), “application/pdf”) .header(“content-disposition”, “attachment; filename = ” + name + “.pdf”).build(); } 这个web服务使用我的js中的参数(Json): […] $.ajax({ url : webServiceUrl, // type : “POST”, // Content type to send to the server contentType : “application/json; charset=utf-8”, data : pData, dataType […]

从mule esb使用.NET ASMX Web服务会引发CXFexception:401未经授权

我在另一台服务器上有一个.NET ASMX Web服务,我在另一台服务器上安装了mule standalone CE 3.4。 我有一个非常简单的流程,需要调用此.NET Web服务并传递两个字符串参数。 基本上,我公开了一个http入站端点(用于测试目的)来调用流并使用java转换器类来返回需要传递给Web服务的字符串。 这是WebServiceParamsTransformer类的代码。 public class WebServiceParamsTransformer extends AbstractTransformer { @Override public Object doTransform(Object src, String encoding) throws TransformerException { Object[] out = new Object[2]; out[0] = “Update Ticket Service”; out[1] = Base64.encode(“123456hari2013-09-16T15:52:14.0000+00.00”); return out; } } 不幸的是这不起作用 – 我收到以下错误’响应代码:401。未经授权’。 以下是错误日志的摘录: INFO 2013-09-17 13:54:13,396 [[sftest].httpConnector.receiver.02] org.apache.commons.httpclient.auth.AuthChallengeProcessor: **ntlm authentication scheme […]

javax.ws.rs.NotFoundException:无法找到完整路径错误发现的资源

我在这里几次发现同样的问题,但我找不到答案。 当我运行我的应用程序时,我得到以下错误 javax.ws.rs.NotFoundException: Could not find resource for full path: http://localhost:8080/RemoteQuartzScheduler/rest/TestClass/hello at org.jboss.resteasy.core.registry.ClassNode.match(ClassNode.java:73) at org.jboss.resteasy.core.registry.RootClassNode.match(RootClassNode.java:48) at org.jboss.resteasy.core.ResourceMethodRegistry.getResourceInvoker(ResourceMethodRegistry.java:444) at org.jboss.resteasy.core.SynchronousDispatcher.getInvoker(SynchronousDispatcher.java:234) at org.jboss.resteasy.core.SynchronousDispatcher.invoke(SynchronousDispatcher.java:171) at org.jboss.resteasy.plugins.server.servlet.ServletContainerDispatcher.service(ServletContainerDispatcher.java:220) at org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher.service(HttpServletDispatcher.java:56) at org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher.service(HttpServletDispatcher.java:51) at javax.servlet.http.HttpServlet.service(HttpServlet.java:728) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:222) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123) at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:502) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:171) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:99) at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:953) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:408) at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1023) at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:589) at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:310) […]

在Tomcat中部署war文件时的java.lang.reflect.MalformedParameterizedTypeException

通过tomcat 7.0.4版进行部署时,我收到以下exception。 我正在使用java 1.7。 似乎它正在使用jdk 1.6正常。 2013-09-26 13:03:58,154 ERROR [org.springframework.web.context.ContextLoader] – Context initialization failed org.springframework.beans.factory.BeanCreationException: Error creating bean wit h name ‘cxf’ defined in class path resource [META-INF/cxf/cxf.xml]: Initializati on of bean failed; nested exception is java.lang.reflect.MalformedParameterizedT ypeException at org.springframework.beans.factory.support.AbstractAutowireCapableBean Factory.doCreateBean(AbstractAutowireCapableBeanFactory.java:480) at org.springframework.beans.factory.support.AbstractAutowireCapableBean Factory$1.run(AbstractAutowireCapableBeanFactory.java:409) at java.security.AccessController.doPrivileged(Native Method) at org.springframework.beans.factory.support.AbstractAutowireCapableBean Factory.createBean(AbstractAutowireCapableBeanFactory.java:380) at org.springframework.beans.factory.support.AbstractBeanFactory$1.getOb ject(AbstractBeanFactory.java:264) at org.springframework.beans.factory.support.DefaultSingletonBeanRegistr […]

如何使用Jersey Rest Webservices和Java解析JSON数组

我从iOS客户端获取Json数组,并希望使用Java和jersey以及Gson解析服务器端的Json。 我从iOS发送POST方法中的JSON数组。 我想使用json,但坚持如何在Java类中保存json数据。 这是我的Json数组的结构 { “friendList”: [ {“id”: 1, “username”: “user1”, “name”:”person1″, “friendUsername”:”fUser1″, “friendName”:”fName1″}, {“id”: 2, “username”: “user2”, “name”:”person2″, “friendUsername”:”fUser2″, “friendName”:”fName2″}, {“id”: 3, “username”: “user3”, “name”:”person3″, “friendUsername”:”fUser3″, “friendName”:”fName3″},… ] } 这是我的Web服务类 @Path(“/FriendsList”) public class RestWebServicesAPI { @POST @Path(“/friends”) @Consumes(MediaType.APPLICATION_JSON) public Friends saveFriedList(Friends friend, @Context HttpServletRequest request) { // Don’t know how to parse json array???? […]