Re: Using James 3.8.0 with Microsoft SQL Server
Hello Matt Pointer to a working example relying on docker: https://github.com/apache/james-project/tree/master/server/apps/jpa-app#using-alternative-jdbc-drivers -- Best regards, Benoit TELLIER General manager of Linagora VIETNAM. Product owner for Team-Mail product. Chairman of the Apache James project. Mail: btell...@linagora.com Tel: (0033) 6 77 26 04 58 (WhatsApp, Signal) On Oct 20, 2023 9:13 PM, from Matt Pryor I have also tried editing my startup command as follows but still getting the same result: java -javaagent:james-server-jpa-app.lib\openjpa-3.2.0.jar -Dworking.directory=. -Djdk.tls.ephemeralDHKeySize=2048 -Dlogback.configurationFile=conf\logback.xml -cp "james-server-jpa-app.jar:james-server-jpa-app.lib/*: extension-jars/mssql-jdbc-7.4.1.jre8.jar" -jar james-server-jpa-app.jar Thanks Matt On Fri, 20 Oct 2023 at 14:59, Matt Pryor wrote: > Hello > > I have the following in james-database.properties: > > database.driverClassName=com.microsoft.sqlserver.jdbc.SQLServerDriver > database.url=jdbc:sqlserver://sqlserver_host_name;DatabaseName=apache_james > database.username=james > database.password=x > > vendorAdapter.database=SQL_SERVER > > I'm getting ClassNotFoundException for SQLServerDriver. > > The driver jar is in /extension-jars > > I have also tried putting it in james-server-jpa-app.lib but still getting > the same error. > > Is there somewhere else I have to specify the jar location so it gets > included in the classpath? > > Regards > Matt > > > > -- > Kind regards > Matt Pryor > Software Developer > > The International Presence Group of Companies > EMAIL: pr...@presencebpm.com > URL: International-presence.com > > > -- Kind regards Matt Pryor Software Developer The International Presence Group of Companies EMAIL: pr...@presencebpm.com URL: International-presence.com
Re: Error on startup
Are you running on Windows? We did some changes to prevent privilege escalation with JMX but apparently file permission handling fails on windows. We can likely avoid setting permissions when on Windows. CF https://issues.apache.org/jira/browse/JAMES-3949 -- Best regards, Benoit TELLIER General manager of Linagora VIETNAM. Product owner for Team-Mail product. Chairman of the Apache James project. Mail: btell...@linagora.com Tel: (0033) 6 77 26 04 58 (WhatsApp, Signal) On Oct 20, 2023 7:31 PM, from Matt Pryor Hello Just trying to get the latest Guice version of James up and running. I'm currently using the default configuration files and was planning on setting everything correctly to match the old version settings once I get it started. I'm seeing this error on startup. Should I worry about this, and if so how do I fix it? java.lang.UnsupportedOperationException: null at java.base/java.nio.file.Files.setPosixFilePermissions(Files.java:2168) at org.apache.james.modules.server.JMXServer.setPermissionOwnerOnly(JMXServer.java:202) at org.apache.james.modules.server.JMXServer.generateJMXPasswordFile(JMXServer.java:179) at org.apache.james.modules.server.JMXServer.generateJMXPasswordFileIfNeed(JMXServer.java:164) at org.apache.james.modules.server.JMXServer.doStart(JMXServer.java:123) at org.apache.james.modules.server.JMXServer.start(JMXServer.java:94) at org.apache.james.modules.server.JMXServerModule.lambda$startJmxServer$0(JMXServerModule.java:124) at org.apache.james.utils.InitilizationOperationBuilder$PrivateImpl.initModule(InitilizationOperationBuilder.java:71) at com.github.fge.lambdas.consumers.ConsumerChainer.lambda$sneakyThrow$9(ConsumerChainer.java:73) at java.base/java.util.stream.ReferencePipeline$15$1.accept(ReferencePipeline.java:540) at java.base/java.util.stream.DistinctOps$1$2.accept(DistinctOps.java:174) at java.base/java.util.stream.ForEachOps$ForEachOp$OfRef.accept(ForEachOps.java:184) at java.base/java.util.stream.Streams$StreamBuilderImpl.forEachRemaining(Streams.java:411) at java.base/java.util.stream.Streams$ConcatSpliterator.forEachRemaining(Streams.java:735) at java.base/java.util.stream.ReferencePipeline$Head.forEach(ReferencePipeline.java:762) at java.base/java.util.stream.ReferencePipeline$7$1.accept(ReferencePipeline.java:276) at java.base/java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:179) at java.base/java.util.Spliterators$ArraySpliterator.forEachRemaining(Spliterators.java:1024) at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:509) at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:499) at java.base/java.util.stream.ForEachOps$ForEachOp.evaluateSequential(ForEachOps.java:151) at java.base/java.util.stream.ForEachOps$ForEachOp$OfRef.evaluateSequential(ForEachOps.java:174) at java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234) at java.base/java.util.stream.ReferencePipeline.forEach(ReferencePipeline.java:596) at java.base/java.util.stream.ReferencePipeline$7$1.accept(ReferencePipeline.java:276) at java.base/java.util.Spliterators$ArraySpliterator.forEachRemaining(Spliterators.java:1024) at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:509) at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:499) at java.base/java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:921) at java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234) at java.base/java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:682) at org.apache.james.utils.InitializationOperations.processStartables(InitializationOperations.java:51) at org.apache.james.utils.InitializationOperations.initModules(InitializationOperations.java:41) at org.apache.james.GuiceJamesServer.start(GuiceJamesServer.java:93) at org.apache.james.JamesServerMain.main(JamesServerMain.java:30) at org.apache.james.JPAJamesServerMain.main(JPAJamesServerMain.java:110) Thanks! Matt -- Kind regards Matt Pryor Software Developer The International Presence Group of Companies EMAIL: pr...@presencebpm.com URL: International-presence.com
Re: Using James 3.8.0 with Microsoft SQL Server
I have also tried editing my startup command as follows but still getting the same result: java -javaagent:james-server-jpa-app.lib\openjpa-3.2.0.jar -Dworking.directory=. -Djdk.tls.ephemeralDHKeySize=2048 -Dlogback.configurationFile=conf\logback.xml -cp "james-server-jpa-app.jar:james-server-jpa-app.lib/*: extension-jars/mssql-jdbc-7.4.1.jre8.jar" -jar james-server-jpa-app.jar Thanks Matt On Fri, 20 Oct 2023 at 14:59, Matt Pryor wrote: > Hello > > I have the following in james-database.properties: > > database.driverClassName=com.microsoft.sqlserver.jdbc.SQLServerDriver > database.url=jdbc:sqlserver://sqlserver_host_name;DatabaseName=apache_james > database.username=james > database.password=x > > vendorAdapter.database=SQL_SERVER > > I'm getting ClassNotFoundException for SQLServerDriver. > > The driver jar is in /extension-jars > > I have also tried putting it in james-server-jpa-app.lib but still getting > the same error. > > Is there somewhere else I have to specify the jar location so it gets > included in the classpath? > > Regards > Matt > > > > -- > Kind regards > Matt Pryor > Software Developer > > The International Presence Group of Companies > EMAIL: pr...@presencebpm.com > URL: www.International-presence.com > > > -- Kind regards Matt Pryor Software Developer The International Presence Group of Companies EMAIL: pr...@presencebpm.com URL: www.International-presence.com
Using James 3.8.0 with Microsoft SQL Server
Hello I have the following in james-database.properties: database.driverClassName=com.microsoft.sqlserver.jdbc.SQLServerDriver database.url=jdbc:sqlserver://sqlserver_host_name;DatabaseName=apache_james database.username=james database.password=x vendorAdapter.database=SQL_SERVER I'm getting ClassNotFoundException for SQLServerDriver. The driver jar is in /extension-jars I have also tried putting it in james-server-jpa-app.lib but still getting the same error. Is there somewhere else I have to specify the jar location so it gets included in the classpath? Regards Matt -- Kind regards Matt Pryor Software Developer The International Presence Group of Companies EMAIL: pr...@presencebpm.com URL: www.International-presence.com
Re: Error on startup
Also just spotted this in the startup logs: 13:23:25.049 ←[31m[WARN ]←[0;39m o.a.j.m.s.JMXServer - No authentication setted up for the JMX component. This expose you to local privilege escalation attacks risk. Thanks Matt On Fri, 20 Oct 2023 at 13:29, Matt Pryor wrote: > Hello > > Just trying to get the latest Guice version of James up and running. I'm > currently using the default configuration files and was planning on setting > everything correctly to match the old version settings once I get it > started. > > I'm seeing this error on startup. Should I worry about this, and if so how > do I fix it? > > java.lang.UnsupportedOperationException: null > at > java.base/java.nio.file.Files.setPosixFilePermissions(Files.java:2168) > at > org.apache.james.modules.server.JMXServer.setPermissionOwnerOnly(JMXServer.java:202) > at > org.apache.james.modules.server.JMXServer.generateJMXPasswordFile(JMXServer.java:179) > at > org.apache.james.modules.server.JMXServer.generateJMXPasswordFileIfNeed(JMXServer.java:164) > at > org.apache.james.modules.server.JMXServer.doStart(JMXServer.java:123) > at > org.apache.james.modules.server.JMXServer.start(JMXServer.java:94) > at > org.apache.james.modules.server.JMXServerModule.lambda$startJmxServer$0(JMXServerModule.java:124) > at > org.apache.james.utils.InitilizationOperationBuilder$PrivateImpl.initModule(InitilizationOperationBuilder.java:71) > at > com.github.fge.lambdas.consumers.ConsumerChainer.lambda$sneakyThrow$9(ConsumerChainer.java:73) > at > java.base/java.util.stream.ReferencePipeline$15$1.accept(ReferencePipeline.java:540) > at > java.base/java.util.stream.DistinctOps$1$2.accept(DistinctOps.java:174) > at > java.base/java.util.stream.ForEachOps$ForEachOp$OfRef.accept(ForEachOps.java:184) > at > java.base/java.util.stream.Streams$StreamBuilderImpl.forEachRemaining(Streams.java:411) > at > java.base/java.util.stream.Streams$ConcatSpliterator.forEachRemaining(Streams.java:735) > at > java.base/java.util.stream.ReferencePipeline$Head.forEach(ReferencePipeline.java:762) > at > java.base/java.util.stream.ReferencePipeline$7$1.accept(ReferencePipeline.java:276) > at > java.base/java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:179) > at > java.base/java.util.Spliterators$ArraySpliterator.forEachRemaining(Spliterators.java:1024) > at > java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:509) > at > java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:499) > at > java.base/java.util.stream.ForEachOps$ForEachOp.evaluateSequential(ForEachOps.java:151) > at > java.base/java.util.stream.ForEachOps$ForEachOp$OfRef.evaluateSequential(ForEachOps.java:174) > at > java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234) > at > java.base/java.util.stream.ReferencePipeline.forEach(ReferencePipeline.java:596) > at > java.base/java.util.stream.ReferencePipeline$7$1.accept(ReferencePipeline.java:276) > at > java.base/java.util.Spliterators$ArraySpliterator.forEachRemaining(Spliterators.java:1024) > at > java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:509) > at > java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:499) > at > java.base/java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:921) > at > java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234) > at > java.base/java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:682) > at > org.apache.james.utils.InitializationOperations.processStartables(InitializationOperations.java:51) > at > org.apache.james.utils.InitializationOperations.initModules(InitializationOperations.java:41) > at > org.apache.james.GuiceJamesServer.start(GuiceJamesServer.java:93) > at org.apache.james.JamesServerMain.main(JamesServerMain.java:30) > at > org.apache.james.JPAJamesServerMain.main(JPAJamesServerMain.java:110) > > > > Thanks! > Matt > > > -- > Kind regards > Matt Pryor > Software Developer > > The International Presence Group of Companies > EMAIL: pr...@presencebpm.com > URL: www.International-presence.com > > > -- Kind regards Matt Pryor Software Developer The International Presence Group of Companies EMAIL: pr...@presencebpm.com URL: www.International-presence.com
Error on startup
Hello Just trying to get the latest Guice version of James up and running. I'm currently using the default configuration files and was planning on setting everything correctly to match the old version settings once I get it started. I'm seeing this error on startup. Should I worry about this, and if so how do I fix it? java.lang.UnsupportedOperationException: null at java.base/java.nio.file.Files.setPosixFilePermissions(Files.java:2168) at org.apache.james.modules.server.JMXServer.setPermissionOwnerOnly(JMXServer.java:202) at org.apache.james.modules.server.JMXServer.generateJMXPasswordFile(JMXServer.java:179) at org.apache.james.modules.server.JMXServer.generateJMXPasswordFileIfNeed(JMXServer.java:164) at org.apache.james.modules.server.JMXServer.doStart(JMXServer.java:123) at org.apache.james.modules.server.JMXServer.start(JMXServer.java:94) at org.apache.james.modules.server.JMXServerModule.lambda$startJmxServer$0(JMXServerModule.java:124) at org.apache.james.utils.InitilizationOperationBuilder$PrivateImpl.initModule(InitilizationOperationBuilder.java:71) at com.github.fge.lambdas.consumers.ConsumerChainer.lambda$sneakyThrow$9(ConsumerChainer.java:73) at java.base/java.util.stream.ReferencePipeline$15$1.accept(ReferencePipeline.java:540) at java.base/java.util.stream.DistinctOps$1$2.accept(DistinctOps.java:174) at java.base/java.util.stream.ForEachOps$ForEachOp$OfRef.accept(ForEachOps.java:184) at java.base/java.util.stream.Streams$StreamBuilderImpl.forEachRemaining(Streams.java:411) at java.base/java.util.stream.Streams$ConcatSpliterator.forEachRemaining(Streams.java:735) at java.base/java.util.stream.ReferencePipeline$Head.forEach(ReferencePipeline.java:762) at java.base/java.util.stream.ReferencePipeline$7$1.accept(ReferencePipeline.java:276) at java.base/java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:179) at java.base/java.util.Spliterators$ArraySpliterator.forEachRemaining(Spliterators.java:1024) at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:509) at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:499) at java.base/java.util.stream.ForEachOps$ForEachOp.evaluateSequential(ForEachOps.java:151) at java.base/java.util.stream.ForEachOps$ForEachOp$OfRef.evaluateSequential(ForEachOps.java:174) at java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234) at java.base/java.util.stream.ReferencePipeline.forEach(ReferencePipeline.java:596) at java.base/java.util.stream.ReferencePipeline$7$1.accept(ReferencePipeline.java:276) at java.base/java.util.Spliterators$ArraySpliterator.forEachRemaining(Spliterators.java:1024) at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:509) at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:499) at java.base/java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:921) at java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234) at java.base/java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:682) at org.apache.james.utils.InitializationOperations.processStartables(InitializationOperations.java:51) at org.apache.james.utils.InitializationOperations.initModules(InitializationOperations.java:41) at org.apache.james.GuiceJamesServer.start(GuiceJamesServer.java:93) at org.apache.james.JamesServerMain.main(JamesServerMain.java:30) at org.apache.james.JPAJamesServerMain.main(JPAJamesServerMain.java:110) Thanks! Matt -- Kind regards Matt Pryor Software Developer The International Presence Group of Companies EMAIL: pr...@presencebpm.com URL: www.International-presence.com