You can use the RMI proxy CGI that ships
with the JDK, but it will be _very_ slow.Your best bet is to write an
application-specific HTTP proxy that
encapsulates things at your application
level, and sends the calls using HTTP
from behind the firewall over to a
servlet/cgi/perl script that you write
that does the server work.The book "Java Servlets Second Edition"
by Karl Moss has some good information
about this. There`s a chapter on using
a technique he calls HTTP tunneling to
make remote calls on the server, and
return the information to the client.
Kind of like RMI but through HTTP,
not TCP/IP. Communication level proxies (RMI or JDBC over HTTP) incur a _ton_ of overhead,
so you want to choose something a little-less fine-grained than that.
with the JDK, but it will be _very_ slow.Your best bet is to write an
application-specific HTTP proxy that
encapsulates things at your application
level, and sends the calls using HTTP
from behind the firewall over to a
servlet/cgi/perl script that you write
that does the server work.The book "Java Servlets Second Edition"
by Karl Moss has some good information
about this. There`s a chapter on using
a technique he calls HTTP tunneling to
make remote calls on the server, and
return the information to the client.
Kind of like RMI but through HTTP,
not TCP/IP. Communication level proxies (RMI or JDBC over HTTP) incur a _ton_ of overhead,
so you want to choose something a little-less fine-grained than that.
applet
jdbc-> lokal server someportlokal sever someport
get data_for_sqlserver
embed data_for_sqlserver -> post_http_data_for_sqlserver
socket port 80-> http://yourwebserver/servlet
send post_http_data_for_sqlserver (use POST)is this ok for u ?remote server with servlet
getPost post_http_data_for_sqlserver
unwrap post_http_data_for_sqlserver -> data_for_sqlserver
socket-> mysql on right port
send data_for_sqlserver receive data_from_sqlserver
embed data_from_sqlserver -> http_response_data_from_sqlserver
sendResponse http_response_data_from_sqlserverlokal server someport
receive http_response_data_from_sqlserver
unwrap http_response_data_from_sqlserver -> data_from_sqlserver
send data_from_sqlserverapplet
jdbc.get data_from_sqlserver -> ResultSet
as you can see this is a lot of work and im not sure if you can open a
serverport in untrusted applets.
so if you can connect to port 80 without a runing webserver you can
write your own jdbc-redirect-proxyapplet
jdbc-> your jdbcproxy on port 80jdbcproxy
get data_to_sqlserver
socket-> mysql on right port
send data_to_sqlserver
get response -> data_from_sqlserver
send data_from_sqlserverapplet
jdbc.get data_from_sqlserver -> ResultSet