2013-03-30 34 views
1

我创建了一个非常简单的PHP Web服务,它没有WSDL。我找到一种方法来从Java应用程序调用它。如何在没有任何外部依赖的情况下从java应用程序调用php web服务?

String endpoint = "http://localhost/webser/simple_server.php"; 
      Service service = new Service(); 
      Call call = (Call) service.createCall(); 
      call.setTargetEndpointAddress(new java.net.URL(endpoint)); 
      call.setOperationName(new QName("urn://tyler/req")); 
      String ret=(String)call.invoke("readfat",new Object[]{}); 
      System.out.print(ret); 

它工作正常,并提供输出。但是它需要外部的jar文件,如axis1-3.jar,commons-discovery,commons-logging .....等。我想知道是否有一种方法可以在没有任何外部依赖的情况下使用Web服务?我的实际需求是从Applet中使用Web服务。所以我不能容忍外部剥削。 JAX-WS可以用于这个目的吗?

+0

您可以使用HttpURLConnection的像在这个帖子这里解释:http://stackoverflow.com/questions/2793150/how-to-use-java-net-urlconnection-to-fire-and-handle -http-请求。 – gerrytan

+0

谢谢格里坦....它是一个有用的链接 – JEMSHID56

回答

2

如果你想调用一个Web服务,如果你可以简单地自己发出HTTP请求。

如果您不想要任何外部依赖关系,则从标准库使用的类是java.net.HttpURLConnection

This question has a very detailed answer showing you how to do this.

+0

哇!谢谢!你做得这么简单。我想了很多。但是,如果我在我的WS.php中添加几行,使用java.net.HttpURLConnection,它将像魅力一样工作。这是一个明智的回答戴夫和gerrytan – JEMSHID56

相关问题