我成功构建了一个简单的Java Web Service(作为例子你可以参考“构建简单的网络服务” )
在 Eclipse 中,使用教程中指出的“Java Web 服务代理技术”可以轻松创建 Web 服务客户端。
我想运行一个 Java Applet,它可以执行与 Java 客户端应用程序相同的操作:访问 Web 服务、调用方法并返回结果。
当我通过 Eclipse 运行代码时(右键单击>“作为 Java Applet 运行..”)一切正常..当我在简单的 html 页面中运行小程序时,小程序启动但陷入死锁:
不会引发任何异常,并且进程会被阻止,而不会在创建 MyWebServiceProxy 类的行上执行任何操作(调用默认构造函数)。
有人能帮我吗?
我在这里粘贴一些代码,让您更好地理解我在小程序内所做的事情:
public class SimpleWSApplet extends Applet {
public void paint(Graphics g)
{
String msg = "Applet initialized";
int i = 1;
g.drawString(msg, 20, 20*i++);
msg = "Error in applet";
try {
Service service = new Service();
Call call = (Call)service.createCall();
call.setTargetEndpointAddress("http://localhost:8080/AppletWSTest/services/SimpleWS");
call.setOperationName(new QName("http://soapinterop.org/", "getMessage"));
msg = (String)call.invoke(new Object[]{});
} catch (Exception e) {
e.printStackTrace();
msg = "Error: "+e.getMessage();
}
g.drawString(msg, 20, 20*i++);
//g.drawString(executeInvocation(msg), 20, 20*i++);
}
}
显然,我的 Web 服务称为“SimpleWS”,我调用的方法称为“getMessage”,它不接受任何参数,并返回一个字符串。
请帮我..