Comments (27)
Could it be that I've installed the wrong version of WebSphere Liberty profile? The screenshot below highlights the version I've got installed:
I'm going to try the latest one and see if that makes a difference.
from bluebox.
OK - I tried Liberty profile 9.1 but couldn't even get bluebox to start - too many one thing incompatible with another.
I think I'll go look for another promiscuous smtp server. if I can't find another option, I'll most likely give this another try.
Hopefully the tool author - @stephen-kruger - will have responded by then.
from bluebox.
from bluebox.
Oh wow - thanks for responding, @stephen-kruger.
Sounds like you have a ssl config problem. Might be JDK related.
Yes, I felt I was at the precipice of success but I'm not one familiar with Java so was walking around blindly, aimlessly. Let me know if there's anything you'd like me to try. I'm not one to shy from experimentation.
from bluebox.
Can you try the latest 4.7.0 release and see if it works?
Please follow the instructions in the README, and use the right server.xml etc
from bluebox.
On it.
UPDATE:
I've started afresh by deleting the entire /opt/wlp
directory and unzipped the WebSphere Liberty Profile 8 21.0.0.12. However, when I visit the url hxxp://1.2.3.4:8080 I'm getting the Welcome to Liberty screen instead of the Bluebox interface like I had with v4.6.1.
In addition, where the README.md file calls for editing [wlp dir]/usr/server/defaultServer/bluebox.properties
, a search in the entire [wlp dir]
directory did not reveal a a file that contains bluebox_port. This file existed while I was using v4.6.1.
I searched using the command:
find . -type f -name "*.properties" -exec egrep -il 'bluebox_port=' {} \;
I'm going to try WebSphere Liberty Profile 9.1 21.0.0.12 while I await your response.
Thanks again for taking time to address the issue.
from bluebox.
Oh oh - disregard the above. Just realized I copied the war file to the wrong directory. Retrying...
from bluebox.
OK - everything now according to the book. However, I get the following error:
# tail -F usr/servers/bluebox/logs/console.log
WARNING: Illegal reflective access by org.apache.aries.jndi.startup.Activator (file:/opt/wlp/lib/com.ibm.ws.org.apache.aries.jndi.core_1.1.59.jar) to field javax.naming.spi.NamingManager.initctx_factory_builder
WARNING: Please consider reporting this to the maintainers of org.apache.aries.jndi.startup.Activator
WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations
WARNING: All illegal access operations will be denied in a future release
[AUDIT ] CWPKI0820A: The default keystore has been created using the 'keystore_password' environment variable.
[AUDIT ] CWWKS4104A: LTPA keys created in 0.570 seconds. LTPA key file: /opt/wlp/usr/servers/bluebox/resources/security/ltpa.keys
[AUDIT ] CWPKI0803A: SSL certificate created in 2.086 seconds. SSL key file: /opt/wlp/usr/servers/bluebox/resources/security/key.p12
[ERROR ] CWWKZ0002E: An exception occurred while starting the application bluebox. The exception message was: java.lang.UnsupportedClassVersionError: com/bluebox/rest/RestApi has been compiled by a more recent version of the Java Runtime (class file version 60.0), this version of the Java Runtime only recognizes class file versions up to 55.0
[AUDIT ] CWWKF0012I: The server installed the following features: [appSecurity-2.0, beanValidation-1.1, cdi-1.2, distributedMap-1.0, ejbLite-3.2, el-3.0, jaxrs-2.0, jaxrsClient-2.0, jdbc-4.1, jndi-1.0, jpa-2.1, jpaContainer-2.1, jsf-2.2, json-1.0, jsonp-1.0, jsp-2.3, managedBeans-1.0, servlet-3.1, ssl-1.0, webProfile-7.0, websocket-1.1].
[AUDIT ] CWWKF0011I: The bluebox server is ready to run a smarter planet. The bluebox server started in 13.244 seconds.
I installed JAVA on ubuntu 20.04 using the command apt install default-jre
which installed the following version:
# java --version
openjdk 11.0.11 2021-04-20
OpenJDK Runtime Environment (build 11.0.11+9-Ubuntu-0ubuntu2.20.04)
OpenJDK 64-Bit Server VM (build 11.0.11+9-Ubuntu-0ubuntu2.20.04, mixed mode, sharing)
Judging by the error in the logs, it looks like I need to install an older version of java. Let me know which version I'll need to install.
EDIT:
Reading around shows I need Java 16. Let me deploy that and see...
from bluebox.
Installed Oracle Java 16 and I can now get to the Bluebox interface on the browser and the SMTP server is running. However, in the logs I saw some errors. Not sure what implications that will have later on:
# tail -F usr/servers/bluebox/logs/console.log
[AUDIT ] CWPKI0820A: The default keystore has been created using the 'keystore_password' environment variable.
[AUDIT ] CWWKT0016I: Web application available (default_host): http://promisc-smtp.lxd:8080/
[AUDIT ] CWWKZ0001I: Application bluebox started in 8.803 seconds.
[err] SLF4J: Class path contains multiple SLF4J bindings.
[err] SLF4J: Found binding in [wsjar:file:/opt/wlp/usr/servers/bluebox/apps/expanded/bluebox.war/WEB-INF/lib/log4j-slf4j-impl-2.14.1.jar!/org/slf4j/impl/StaticLoggerBinder.class]
[err] SLF4J: Found binding in [wsjar:file:/opt/wlp/usr/servers/bluebox/apps/expanded/bluebox.war/WEB-INF/lib/slf4j-simple-1.7.31.jar!/org/slf4j/impl/StaticLoggerBinder.class]
[err] SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation.
[err] SLF4J: Actual binding is of type [org.apache.logging.slf4j.Log4jLoggerFactory]
[AUDIT ] CWWKF0012I: The server installed the following features: [appSecurity-2.0, beanValidation-1.1, cdi-1.2, distributedMap-1.0, ejbLite-3.2, el-3.0, jaxrs-2.0, jaxrsClient-2.0, jdbc-4.1, jndi-1.0, jpa-2.1, jpaContainer-2.1, jsf-2.2, json-1.0, jsonp-1.0, jsp-2.3, managedBeans-1.0, servlet-3.1, ssl-1.0, webProfile-7.0, websocket-1.1].
[AUDIT ] CWWKF0011I: The bluebox server is ready to run a smarter planet. The bluebox server started in 12.733 seconds.
Off to test...
from bluebox.
Testing not successful. I'm using the following command to test:
echo "Testing promiscuous email..." | mail -s "Testing Promiscuous SMTP server @ $(date)" [email protected]
console log error when I send an email
13:33:55.852 [org.subethamail.smtp.server.Session-/10.0.0.13:48580] ERROR org.subethamail.smtp.server.Session - Unexpected error in the SMTP handler thread
java.lang.NoSuchMethodError: 'void com.sun.mail.util.LineInputStream.<init>(java.io.InputStream, boolean)'
at javax.mail.internet.InternetHeaders.load(InternetHeaders.java:422) ~[javax.mail-api-1.6.2.jar:1.6.2]
at javax.mail.internet.InternetHeaders.<init>(InternetHeaders.java:380) ~[javax.mail-api-1.6.2.jar:1.6.2]
at javax.mail.internet.MimeMessage.createInternetHeaders(MimeMessage.java:2304) ~[javax.mail-api-1.6.2.jar:1.6.2]
at javax.mail.internet.MimeMessage.parse(MimeMessage.java:353) ~[javax.mail-api-1.6.2.jar:1.6.2]
at javax.mail.internet.MimeMessage.<init>(MimeMessage.java:223) ~[javax.mail-api-1.6.2.jar:1.6.2]
at com.bluebox.Utils.loadEML(Utils.java:129) ~[classes/:?]
at com.bluebox.smtp.storage.mongodb.MongoImpl.getSpooledStream(MongoImpl.java:572) ~[classes/:?]
at com.bluebox.smtp.Inbox.deliver(Inbox.java:720) ~[classes/:?]
at org.subethamail.smtp.helper.SimpleMessageListenerAdapter$Handler.data(SimpleMessageListenerAdapter.java:142) ~[subethasmtp-3.1.7.jar:June 16 2012]
at org.subethamail.smtp.command.DataCommand.execute(DataCommand.java:64) ~[subethasmtp-3.1.7.jar:June 16 2012]
at org.subethamail.smtp.server.RequireTLSCommandWrapper.execute(RequireTLSCommandWrapper.java:30) ~[subethasmtp-3.1.7.jar:June 16 2012]
at org.subethamail.smtp.server.CommandHandler.handleCommand(CommandHandler.java:99) ~[subethasmtp-3.1.7.jar:June 16 2012]
at org.subethamail.smtp.server.Session.runCommandLoop(Session.java:244) ~[subethasmtp-3.1.7.jar:June 16 2012]
at org.subethamail.smtp.server.Session.run(Session.java:145) [subethasmtp-3.1.7.jar:June 16 2012]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) [?:?]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) [?:?]
at java.lang.Thread.run(Thread.java:833) [?:?]
[err] Exception in thread "pool-3-thread-4"
[err] java.lang.NoSuchMethodError: 'void com.sun.mail.util.LineInputStream.<init>(java.io.InputStream, boolean)'
[err] at javax.mail.internet.InternetHeaders.load(InternetHeaders.java:422)
[err] at javax.mail.internet.InternetHeaders.<init>(InternetHeaders.java:380)
[err] at javax.mail.internet.MimeMessage.createInternetHeaders(MimeMessage.java:2304)
[err] at javax.mail.internet.MimeMessage.parse(MimeMessage.java:353)
[err] at javax.mail.internet.MimeMessage.<init>(MimeMessage.java:223)
[err] at com.bluebox.Utils.loadEML(Utils.java:129)
[err] at com.bluebox.smtp.storage.mongodb.MongoImpl.getSpooledStream(MongoImpl.java:572)
[err] at com.bluebox.smtp.Inbox.deliver(Inbox.java:720)
[err] at org.subethamail.smtp.helper.SimpleMessageListenerAdapter$Handler.data(SimpleMessageListenerAdapter.java:142)
[err] at org.subethamail.smtp.command.DataCommand.execute(DataCommand.java:64)
[err] at org.subethamail.smtp.server.RequireTLSCommandWrapper.execute(RequireTLSCommandWrapper.java:30)
[err] at org.subethamail.smtp.server.CommandHandler.handleCommand(CommandHandler.java:99)
[err] at org.subethamail.smtp.server.Session.runCommandLoop(Session.java:244)
[err] at org.subethamail.smtp.server.Session.run(Session.java:145)
[err] at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
[err] at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
[err] at java.base/java.lang.Thread.run(Thread.java:833)
Any suggestions welcome.
In the meantime, I'm going to try WebSphere Liberty Profile 9.1.
from bluebox.
Your jvvm is older than mine (I'm using OpenJDK Runtime Environment Homebrew (build 17.0.1+1))
But it should work, I made a new release targetting 1.8
Can you download the new war and try agin please?
from bluebox.
Wow - quick response. On it...
But before I go, I did update to Java 17:
# java --version
java 17.0.1 2021-10-19 LTS
Java(TM) SE Runtime Environment (build 17.0.1+12-LTS-39)
Java HotSpot(TM) 64-Bit Server VM (build 17.0.1+12-LTS-39, mixed mode, sharing)
The logs above are from this new Java version.
from bluebox.
One quick question - exactly how do I perform an upgrade? Is it just as simple as copying the bluebox.war
file to the bluebox/apps
directory and then stopping and starting the server?
from bluebox.
OK - it looks like my upgrade assumption is correct.
However, even with this new version, I'm still getting that error to do with:
13:49:03.234 [org.subethamail.smtp.server.Session-/10.0.0.13:48588] ERROR org.subethamail.smtp.server.Session - Unexpected error in the SMTP handler thread
java.lang.NoSuchMethodError: 'void com.sun.mail.util.LineInputStream.<init>(java.io.InputStream, boolean)'
from bluebox.
Downgraded a few jars to try match your ancient JVM.
Grab the new war and try again.
If it doesn't work can you upgrade your JVM to. something more recent?
from bluebox.
@stephen-kruger - I have upgraded to the latest Oracle Java 17 already! Maybe all my messages aren't getting through?
# java --version
java 17.0.1 2021-10-19 LTS
Java(TM) SE Runtime Environment (build 17.0.1+12-LTS-39)
Java HotSpot(TM) 64-Bit Server VM (build 17.0.1+12-LTS-39, mixed mode, sharing)
Is a release from 2021-10-19 too ancient already?
from bluebox.
Did you try the new war too?
from bluebox.
Yep - just tried the latest one:
# md5sum usr/servers/bluebox/apps/bluebox.war
7fc7f6c02a85a0474ce7592893ac3eb6 usr/servers/bluebox/apps/bluebox.war
console log
14:18:41.018 [org.subethamail.smtp.server.Session-/10.0.0.13:48602] ERROR org.subethamail.smtp.server.Session - Unexpected error in the SMTP handler thread
java.lang.NoClassDefFoundError: Could not initialize class javax.mail.internet.MimeMessage
at com.bluebox.Utils.loadEML(Utils.java:129) ~[classes/:?]
at com.bluebox.smtp.storage.mongodb.MongoImpl.getSpooledStream(MongoImpl.java:572) ~[classes/:?]
at com.bluebox.smtp.Inbox.deliver(Inbox.java:720) ~[classes/:?]
at org.subethamail.smtp.helper.SimpleMessageListenerAdapter$Handler.data(SimpleMessageListenerAdapter.java:142) ~[subethasmtp-3.1.7.jar:June 16 2012]
at org.subethamail.smtp.command.DataCommand.execute(DataCommand.java:64) ~[subethasmtp-3.1.7.jar:June 16 2012]
at org.subethamail.smtp.server.RequireTLSCommandWrapper.execute(RequireTLSCommandWrapper.java:30) ~[subethasmtp-3.1.7.jar:June 16 2012]
at org.subethamail.smtp.server.CommandHandler.handleCommand(CommandHandler.java:99) ~[subethasmtp-3.1.7.jar:June 16 2012]
at org.subethamail.smtp.server.Session.runCommandLoop(Session.java:244) ~[subethasmtp-3.1.7.jar:June 16 2012]
at org.subethamail.smtp.server.Session.run(Session.java:145) [subethasmtp-3.1.7.jar:June 16 2012]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) [?:?]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) [?:?]
at java.lang.Thread.run(Thread.java:833) [?:?]
[err] Exception in thread "pool-3-thread-3"
[err] java.lang.NoClassDefFoundError: Could not initialize class javax.mail.internet.MimeMessage
[err] at com.bluebox.Utils.loadEML(Utils.java:129)
[err] at com.bluebox.smtp.storage.mongodb.MongoImpl.getSpooledStream(MongoImpl.java:572)
[err] at com.bluebox.smtp.Inbox.deliver(Inbox.java:720)
[err] at org.subethamail.smtp.helper.SimpleMessageListenerAdapter$Handler.data(SimpleMessageListenerAdapter.java:142)
[err] at org.subethamail.smtp.command.DataCommand.execute(DataCommand.java:64)
[err] at org.subethamail.smtp.server.RequireTLSCommandWrapper.execute(RequireTLSCommandWrapper.java:30)
[err] at org.subethamail.smtp.server.CommandHandler.handleCommand(CommandHandler.java:99)
[err] at org.subethamail.smtp.server.Session.runCommandLoop(Session.java:244)
[err] at org.subethamail.smtp.server.Session.run(Session.java:145)
[err] at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
[err] at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
[err] at java.base/java.lang.Thread.run(Thread.java:833)
from bluebox.
I also just tried to re-install bluebox thinking that I might be missing components from the new .war file:
# bin/installUtility install bluebox
Checking for missing features required by the server ...
The server does not require any additional features. No features were installed.
Start product validation...
Product validation completed successfully.
from bluebox.
Try send mail using telnet instead, odds are your sendmail is doing something funky.
What happens if you generate mails from the admin page?
from bluebox.
Tried using Thunderbird - same error
Attempt to send email via Bluebox interface
Got this error:
14:58:30.900 [Default Executor-thread-3] ERROR com.bluebox.WorkerThread - Initialising thread generate
14:58:30.903 [Thread-24] ERROR com.bluebox.Utils - Problem generating mail
java.lang.NoClassDefFoundError: Could not initialize class javax.mail.internet.MimeMessage
at com.bluebox.Utils.createMessage(Utils.java:399) ~[classes/:?]
at com.bluebox.Utils$1.run(Utils.java:200) [classes/:?]
at java.lang.Thread.run(Thread.java:833) [?:?]
Attempt to send email via Telnet
$ telnet 8.8.8.8 25
Trying 8.8.8.8...
Connected to 8.8.8.8.
Escape character is '^]'.
220 promisc-smtp ESMTP BlueBox V4.7.0
ehlo domain.com
250-promisc-smtp
250-8BITMIME
250 Ok
mail from: [email protected]
250 Ok
rcpt to: [email protected]
250 Ok
data
354 End data with <CR><LF>.<CR><LF>
Subject: Testing Promiscuous SMTP server
This is a test message to the Promiscuous SMTP server via telnet.
.
421 4.3.0 Mail system failure, closing transmission channel
Connection closed by foreign host.
Got same error as before:
15:07:08.198 [org.subethamail.smtp.server.Session-/10.0.0.13:59510] ERROR org.subethamail.smtp.server.Session - Unexpected error in the SMTP handler thread
java.lang.NoClassDefFoundError: Could not initialize class javax.mail.internet.MimeMessage
at com.bluebox.Utils.loadEML(Utils.java:129) ~[classes/:?]
at com.bluebox.smtp.storage.mongodb.MongoImpl.getSpooledStream(MongoImpl.java:572) ~[classes/:?]
at com.bluebox.smtp.Inbox.deliver(Inbox.java:720) ~[classes/:?]
at org.subethamail.smtp.helper.SimpleMessageListenerAdapter$Handler.data(SimpleMessageListenerAdapter.java:142) ~[subethasmtp-3.1.7.jar:June 16 2012]
at org.subethamail.smtp.command.DataCommand.execute(DataCommand.java:64) ~[subethasmtp-3.1.7.jar:June 16 2012]
at org.subethamail.smtp.server.RequireTLSCommandWrapper.execute(RequireTLSCommandWrapper.java:30) ~[subethasmtp-3.1.7.jar:June 16 2012]
at org.subethamail.smtp.server.CommandHandler.handleCommand(CommandHandler.java:99) ~[subethasmtp-3.1.7.jar:June 16 2012]
at org.subethamail.smtp.server.Session.runCommandLoop(Session.java:244) ~[subethasmtp-3.1.7.jar:June 16 2012]
at org.subethamail.smtp.server.Session.run(Session.java:145) [subethasmtp-3.1.7.jar:June 16 2012]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) [?:?]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) [?:?]
at java.lang.Thread.run(Thread.java:833) [?:?]
[err] Exception in thread "pool-3-thread-16"
[err] java.lang.NoClassDefFoundError: Could not initialize class javax.mail.internet.MimeMessage
[err] at com.bluebox.Utils.loadEML(Utils.java:129)
[err] at com.bluebox.smtp.storage.mongodb.MongoImpl.getSpooledStream(MongoImpl.java:572)
[err] at com.bluebox.smtp.Inbox.deliver(Inbox.java:720)
[err] at org.subethamail.smtp.helper.SimpleMessageListenerAdapter$Handler.data(SimpleMessageListenerAdapter.java:142)
[err] at org.subethamail.smtp.command.DataCommand.execute(DataCommand.java:64)
[err] at org.subethamail.smtp.server.RequireTLSCommandWrapper.execute(RequireTLSCommandWrapper.java:30)
[err] at org.subethamail.smtp.server.CommandHandler.handleCommand(CommandHandler.java:99)
[err] at org.subethamail.smtp.server.Session.runCommandLoop(Session.java:244)
[err] at org.subethamail.smtp.server.Session.run(Session.java:145)
[err] at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
[err] at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
[err] at java.base/java.lang.Thread.run(Thread.java:833)
from bluebox.
All attempts result in similar failure:
java.lang.NoClassDefFoundError
from bluebox.
For some reason your setup cannot access the bundled mail jars.
I've added another compat version in, could you please try again with new war.
Make sure you have exactly the same Liberty server as shown in the readme (they are a real PITA)
Delete the old one, install fresh.
from bluebox.
OK - will wipe out the entire directory and perform a reboot before I attempt again. I've also just downloaded that new .war file:
# md5sum /var/tmp/bluebox.war
cfb453ad9c5c785043ea6b1f10b14485 /var/tmp/bluebox.war
from bluebox.
Added as v4.7.1
from bluebox.
It works! You ROCK!!!!
Thank you so much for your help.
from bluebox.
FINALLY! :)
from bluebox.
Related Issues (12)
- JUnit timing failures HOT 1
- Searching by email content when filtered by email brings up doubled email results HOT 1
- errors.jsp stylig issue HOT 1
- Missing classes from latest release 4.6.0 HOT 4
- Latest release does not work with Websphere Liberty(Open Liberty) in a Docker container HOT 2
- can't accept NDRs from Domino? HOT 9
- Symbolic link to webapps directory does not exist in RPM HOT 1
- Search inbox or all does not find the message
- Problem for creating a new address HOT 3
- Available bluebox servers HOT 3
- Broken link on README.md
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from bluebox.