1

我有一个 Java Web 应用程序,它需要调用位于不同服务器上的 Web 服务。

这是我调用该服务的 perl 脚本的代码:

#!/usr/bin/perl -w

use SOAP::Lite;

my $user = 'user';
my $password = 'password';

my $loginURI = "http://someserver:8080/SakaiLogin.jws?wsdl";
my $scriptURI = "http://someserver:8080/sakai-axis/scripts/RosterService.jws?wsdl";

my $loginsoap = SOAP::Lite
-> proxy($loginURI)
-> uri($loginURI);

my $scriptsoap = SOAP::Lite
-> proxy($scriptURI)
-> uri($scriptURI);

my $session = $loginsoap->login($user, $password)->result;

# doSiteRoster(session, site_id, user_id)
my $result = $scriptsoap->doSiteRoster($session, "cfc338aa-acfb-41a6-a998-7e467afc297b", "djswartz")->result;

my $logout = $loginsoap->logout($session)->result;

exit;

现在,我想我可以使用 javax.xml.ws.Service ......虽然我不太确定如何去做。任何方向都会很棒。

4

3 回答 3

0

This is a very open ended question. -There are quite a few frameworks/libraries in java to invoke webservices.

Check these frameworks out wsif, axis,jax-ws and choose what you like. While the first one is specifically for invocation, the last two are more full fledged and helps you created server side (your own services) as well as client side code.

于 2012-04-05T00:03:16.597 回答
0

我会使用:

  1. 一个简单的 http 连接到服务端口并自己发送 XML

或者

  1. Jax-ws 作为客户端 - 您需要在 Wsdl 上运行 wsimport,然后使用生成的 java 类来调用您的服务。
于 2012-04-04T23:47:31.457 回答
0

您可以在http://code.google.com/p/simple-samples/downloads/list中找到简单的示例http://code.google.com/p/simple-samples/source/checkout和有关它们的文档

于 2012-04-04T23:53:57.850 回答