Embedded mode in a proxied environment

2005-10-10
2013-04-09
  • Hi! 

    First of all I'm really enjoying using NFC!  There's nothing quite like code that just works, and right out of the box as well.  Great job!

    I'm trying to do something a little odd, so I don't know if I am going about it wrong, or just trying something that the code was just not designed to do. 

    I've got nfc running in embedded mode on a tomcat 5.0 platform proxied to the ssl port (with an appropriate certificate) of an apache 2.0 server.  Everything works, except when I try to connect to the web page outside of the local environment (i.e. outside of the firewall) the embedded client attempts to connect to the back-end server on port 7777 through the firewall.  This port is blocked for various reasons.

    What I would like to do, if it is possable, is to establish the connection to the server from the http server, not from the external web browser.

    Am I missing something?  Or am I just trying to make the code do something it was never intended to do?

    I appreciate your help!

     
    • Daniel Tahin
      Daniel Tahin
      2005-10-11

      Hi!

      Yes, you can connect to the nfc-server through the http-server. This is the so called tunneling mode. For this, you'll let Tomcat start the nfc-server. I never tried with Tomcat... But with Jetty4.2 this was easy. I copied nfc.war to webapps/template (i think) in the Jetty directory, and at startup Jetty has started the nfc-server.
      To enable tunneling mode, you should specify some parameters for the applet:
      <param name="tunnelOnly" value="false">
      <param name="tunnelRead" value="http://server-name:port/path_to_the_tunnelserver">
      <param name="tunnelWrite" value="same as above">

      In Jetty the path was "template/nfc/tunnel" (or something like this).
      In the file WEB-INF/web.xml in nfc.war is described, how the http-server should strat up the nfc-tunnel-server.

      Hope this helps,
      Daniel