On Wed, Oct 23, 2013 at 1:59 PM, Rodolfo Piedrabuena <rpiedrabu...@gmail.com
> wrote:

> Hi there,
>
> I'm receiving the following exception:
>
> java.net.SocketException: "Permission denied": connect
>
> when instantiating a Socket from a servlet:
>
> final Socket smtpSocket = new Socket(mailTransportHost, mailTransportPort);
>
> This application was running as a service under Windows Server 3003 R2
> 32-bits. After migrating it to Windows Server 2008 R2 64-bit, I cannot
> longer establish connection with the smtp server.
>
> This only happen when running Tomcat as a service.
> Running as a standalone (starting it up using startup.bat) works fine. No
> exception instantiating Socket, emails are sent.
>
> Environment:
>
>    - Windows Server 2008 R2 64-bit
>    - Tomcat 7.0.39
>    - jdk1.6.0_33-x64
>
> Any help would be much appreciated
>

Have you tried starting the JVM with -Dsocket.permit_connect=true ? Or
maybe enable the permission to open sockets in the catalina policy files
towards the smtp server, So maybe adding permission rule that looks
something like this:

grant codeBase "file:${catalina.base}/webapps/<your_app>/-" {
        permission java.net.SocketPermission "<smtp_server_ip>:25", "connect";
};

to /etc/tomcat6/policy.d/50local.policy might help. Sorry I only use
linux/unix wouldn't know where exactly the policy files are on
windows.

Igor

Reply via email to