HowTo: Jython smtplib: java.net.SocketException: Network is unreachable: connect --- workaround

Asked by Armel

************ workaround ----------------------
tell Java to prefer the IPv4 stack by either

- command line parameter -Djava.net.preferIPv4Stack=true

- or using this in the script before touching smtplib features:
import java.lang.System as JS
JS.setProperty("java.net.preferIPv4Stack", "true")

---------------------------------------- thanks for finding

Hy,

I need to send an email after execution.

So, I use smtplib. And it's working from a python console.

When I implemente the code in a sikuli script, and execute with runsikulix.cmd -r <script> , I've the following message :

[error] socket.error ( (-1, 'Unmapped exception: java.net.SocketException: Network is unreachable: connect') )
Exception in thread "MainThread" java.lang.IllegalStateException: No match found
        at java.util.regex.Matcher.group(Matcher.java:536)
        at org.sikuli.scriptrunner.JythonScriptRunner.findErrorSourceWalkTrace(JythonScriptRunner.java:356)
        at org.sikuli.scriptrunner.JythonScriptRunner.findErrorSource(JythonScriptRunner.java:321)
        at org.sikuli.scriptrunner.JythonScriptRunner.runPython(JythonScriptRunner.java:226)
        at org.sikuli.scriptrunner.JythonScriptRunner.runScript(JythonScriptRunner.java:180)
        at org.sikuli.scriptrunner.ScriptRunner$RunBox.executeScript(ScriptRunner.java:629)
        at org.sikuli.scriptrunner.ScriptRunner$RunBox.access$400(ScriptRunner.java:598)
        at org.sikuli.scriptrunner.ScriptRunner.runscript(ScriptRunner.java:470)
        at org.sikuli.ide.SikuliIDE.main(SikuliIDE.java:263)

Can you help me ??? URGENT

Question information

Language:
English Edit question
Status:
Solved
For:
SikuliX Edit question
Assignee:
No assignee Edit question
Solved by:
Armel
Solved:
Last query:
Last reply:
Revision history for this message
Armel (armel-francoise) said :
#1

Hy,

Finally I found the solution !!!!

you must pass an additional parameter: -Djava.net.preferIPv4Stack=true when you call java ....

So, I've just change contents of PARMS in runsikulix.cmd......

It's running :)