Java Web 服务 API,但是我无法在我的服务器上运行 JVM
-
09-06-2019 - |
题
我正在尝试使用 PlanPlusOnline 帐户中的一些数据。他们只提供 java web 服务 API。将使用数据的站点的服务器不允许我安装 Tomcat(编辑:或与此相关的 JVM)。我不会撒谎,我是一名 Java 软件工程师,同时也做一些 Web 工作。我不熟悉 Web 服务或 servlet,但我愿意尝试一下。我更希望他们能够通过 JSON 访问数据,但据我所知他们没有。有任何想法吗?
编辑:澄清。planplusonline 提供的 Web 服务是基于 Java 的。我正在尝试在不使用 Java 的情况下访问此 Web 服务中的数据。我相信现在这是可能的,但我需要做更多的研究。任何可以帮助我指出正确方向的人都会受到赞赏。
解决方案
为了跟进 jodonnell 的评论,可以使用几乎任何服务器端语言建立 Web 服务连接。只是他们提供的 API 示例是用 Java 编写的,可能是因为 PlanPlusOnline 是用 Java 编写的。如果您有服务的 URL 和访问密钥,那么您真正需要做的就是弄清楚如何遍历返回的 XML。如果您不会 Java,那么我建议使用 PHP,因为它可能已经安装,并且已加载适当的模块。此链接可能会有所帮助:
http://www.onlamp.com/pub/a/php/2007/07/26/php-web-services.html
其他提示
如果我正确理解您的问题,您只需连接到现有的 Web 服务,而无需创建自己的 Web 服务。如果是这种情况,也许我遗漏了一些东西,我不相信你根本不需要 Tomcat。如果您使用的是 Netbeans,则可以创建新的桌面或 Web 应用程序,然后右键单击项目名称。选择“新建”,然后选择“其他”,然后选择“Web 客户端”。输入在哪里可以找到 WSDL 的信息(通常是 URL)以及其他必需的信息。
添加 WebClient 后,创建一个实际调用 Web 服务的新类。如果 Web 服务名称是 PlanPlusOnline 那么您可能会看到类似以下内容:
public final class PlanPlusOnlineClient
{
//instance to this class so that we do not have to reinstantiate it every time
private static PlanPlusOnlineClient _instance = new PlanPlusOnlineClient();
//generated class by netbeans with information about the web service
private PlanPlusOnlineService service = null;
//another generated class by netbeans but this is a property of the service
//that contains information about the individual methods available.
private PlanPlusOnline port = null;
private PlanPlusOnlineClient()
{
try
{
service = new PlanPlusOnlineService();
port = service.getPlanPlusOnlinePort();
}
catch (MalformedURLException ex)
{
MessageLog.error(this, ex.getClass().getName(), ex);
}
}
public static PlanPlusOnlineClient getInstance()
{
return _instance;
}
public static String getSomethingInteresting(String param)
{
//this will call one of the actual methods the web
//service provides.
return port.getSomethingIntersting(param);
}
}
我希望这对您有所帮助。您还应该查看 http://www.netbeans.org/kb/60/websvc/有关 Netbeans 和 Web 服务的更多信息。我确信其他 IDE 中也有类似的情况。