【发布时间】:2011-01-31 15:32:01
【问题描述】:
我成功搭建了一个简单的Java Web Service(例子可以参考"Building simple 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”,它不接受任何参数,并返回一个字符串。
请帮帮我..
【问题讨论】:
标签: java webservice-client applet