java中applet与CGI的通信
我有一个小程序,其start()代码如下: 和用java编写并编译为.exe的CGI(使用launch4j): 所以,我有一个错误: “java.io.UTFDataFormatException:字节0周围的输入格式不正确” 排队 字符串receivedString=din.readUTF()java中applet与CGI的通信,java,applet,cgi,Java,Applet,Cgi,我有一个小程序,其start()代码如下: 和用java编写并编译为.exe的CGI(使用launch4j): 所以,我有一个错误: “java.io.UTFDataFormatException:字节0周围的输入格式不正确” 排队 字符串receivedString=din.readUTF() 我做错了什么?在如何发送数据方面存在一些问题,您的cgi程序需要从stdin(而不是args)读取数据,并且小程序已经失效。我在cgi中添加了从标准输入读取数据,但它不起作用。如果在CGI中只打印字符串
我做错了什么?在如何发送数据方面存在一些问题,您的cgi程序需要从stdin(而不是args)读取数据,并且小程序已经失效。我在cgi中添加了从标准输入读取数据,但它不起作用。如果在CGI中只打印字符串,它甚至不起作用。可能是托管有问题(我只是把applet.class和CGi.exe放在了web的子文件夹(它是web项目)中。)PS。我知道applet已经死了,但我必须完成这个任务。PPS。对于服务器,我使用Tomcat7。
public void start() {
try {
URL cgiUrl = new URL("http://localhost:8080/cgi_lib/UsersCGI.exe?someText");
URLConnection con = cgiUrl.openConnection();
con.setDoOutput(true);
con.setDoInput(true);
OutputStream out = con.getOutputStream();
DataInputStream din = new DataInputStream(con.getInputStream());
DataOutputStream dout = new DataOutputStream(out);
dout.writeUTF("Hello");
String receivedString = din.readUTF();
this.out=receivedString;
} catch (MalformedURLException e) {
e.printStackTrace();
}
catch (IOException ex){
ex.printStackTrace();
}
}
public class UsersCGI {
public static void main(String[] args) {
System.out.println(Arrays.toString(args));
}
}