I have a Spring Boot application that uses Spring Integration to do some SFTP polling...
I am trying to follow this guide to package a jar file and deploy it as a war file to a wildfly 8.2 application server. I am using a gradle plugin that only allows the deploy of war or ear files.
So in my attempt to have this done I run locally with embedded tomcat, and it works flawlessly, but when I test it remotely then the app is deployed but never started.
#Configuration
#ComponentScan
#EnableAutoConfiguration
public class Stasher extends SpringBootServletInitializer implements WebApplicationInitializer {
private static Class<Stasher> applicationClass = Stasher.class;
#Override
protected SpringApplicationBuilder configure(SpringApplicationBuilder application) {
return application.sources(applicationClass);
}
public static void main(String[] args) {
System.out.println("MAIN STARTED ***************************");
SpringApplication.run(Stasher.class, args);
}
}
Logs from Wildfly 8.2
19:12:35,347 INFO [org.springframework.jmx.export.annotation.AnnotationMBeanExporter] (MSC service thread 1-4) Registering beans for JMX exposure on startup
19:12:35,352 INFO [org.springframework.context.support.DefaultLifecycleProcessor] (MSC service thread 1-4) Starting beans in phase -2147483648
19:12:35,353 INFO [org.springframework.context.support.DefaultLifecycleProcessor] (MSC service thread 1-4) Starting beans in phase 0
19:12:35,353 INFO [org.springframework.integration.endpoint.EventDrivenConsumer] (MSC service thread 1-4) Adding {logging-channel-adapter:_org.springframework.integration.errorLogger} as a subscriber to the 'errorChannel' channel
19:12:35,353 INFO [org.springframework.integration.channel.PublishSubscribeChannel] (MSC service thread 1-4) Channel 'Stasher-Default.errorChannel' has 1 subscriber(s).
19:12:35,353 INFO [org.springframework.integration.endpoint.EventDrivenConsumer] (MSC service thread 1-4) started _org.springframework.integration.errorLogger
19:12:35,359 INFO [org.springframework.boot.SpringApplication] (MSC service thread 1-4) Started application in 1.695 seconds (JVM running for 11619.131)
19:12:35,361 INFO [org.wildfly.extension.undertow] (MSC service thread 1-4) JBAS017534: Registered web context: /Stasher
19:12:35,439 INFO [org.jboss.as.server] (management-handler-thread - 1) JBAS018559: Deployed "Stasher.war" (runtime-name : "Stasher.war")
Why is the main not starting when in Wildfly?!
It's the configure method that's used when launching a Spring Boot app in an app server. The main method is only used when you launch the app as an executable archive using java -jar.
I removed the extentions of SpringBootServletInitializer, my main and co nfigure methods and added this method instead. It now starts up.
#Override
public void onStartup(ServletContext container) {
ApplicationContext context = new ClassPathXmlApplicationContext("/META-INF/spring/applicationContext.xml");
PollableChannel ftpChannel = context.getBean("ftpChannel", PollableChannel.class);
Message<?> message = ftpChannel.receive();
System.out.println("Received message: " + message);
}
Related
I'm deploying a bootable JAR on Wildfly 21.0.1.Final. The JAR is built with the wildfly-jar-maven-plugin. Here is the plugin configuration:
<plugin>
<groupId>org.wildfly.plugins</groupId>
<artifactId>wildfly-jar-maven-plugin</artifactId>
<configuration>
<feature-pack-location>wildfly#maven(org.jboss.universe:community-universe)#21.0.0.Final
</feature-pack-location>
<layers>
<layer>jaxrs-server</layer>
<layer>management</layer>
<layer>observability</layer>
<layer>microprofile-openapi</layer>
<layer>h2-driver</layer>
<layer>h2-datasource</layer>
</layers>
<excluded-layers>
<layer>deployment-scanner</layer>
</excluded-layers>
</configuration>
...
</plugin>
Running the bootable JAR I get the exception below:
java -jar -Djboss.bind.address=0.0.0.0 -Djboss.bind.address.management=0.0.0.0 -Djboss.http.port=8080 -Djboss.management.http.port=9990 customers/target/customers-bootable.jar
14:04:58,500 INFO [org.wildfly.jar] (main) WFLYJAR0007: Installed server and application in /tmp/wildfly-bootable-server15172013110481762654, took 1035ms
14:04:58,607 INFO [org.wildfly.jar] (main) WFLYJAR0008: Server options: [--read-only-server-config=standalone.xml]
14:04:58,653 INFO [org.jboss.msc] (main) JBoss MSC version 1.4.12.Final
14:04:58,658 INFO [org.jboss.threads] (main) JBoss Threads version 2.4.0.Final
14:04:58,730 INFO [org.jboss.as] (MSC service thread 1-1) WFLYSRV0049: WildFly Full 21.0.0.Final (WildFly Core 13.0.1.Final) starting
14:04:59,134 INFO [org.wildfly.security] (ServerService Thread Pool -- 14) ELY00001: WildFly Elytron version 1.13.1.Final
14:04:59,476 INFO [org.jboss.as.server] (Controller Boot Thread) WFLYSRV0039: Creating http management service using socket-binding (management-http)
14:04:59,487 INFO [org.xnio] (MSC service thread 1-2) XNIO version 3.8.2.Final
14:04:59,493 INFO [org.xnio.nio] (MSC service thread 1-2) XNIO NIO Implementation Version 3.8.2.Final
14:04:59,504 INFO [org.jboss.as.clustering.infinispan] (ServerService Thread Pool -- 31) WFLYCLINF0001: Activating Infinispan subsystem.
14:04:59,514 INFO [org.wildfly.extension.microprofile.config.smallrye._private] (ServerService Thread Pool -- 37) WFLYCONF0001: Activating WildFly MicroProfile Config Subsystem
14:04:59,516 INFO [org.jboss.as.jaxrs] (ServerService Thread Pool -- 33) WFLYRS0016: RESTEasy version 3.13.2.Final
14:04:59,517 INFO [org.jboss.as.connector] (MSC service thread 1-3) WFLYJCA0009: Starting JCA Subsystem (WildFly/IronJacamar 1.4.23.Final)
14:04:59,521 INFO [org.jboss.as.naming] (ServerService Thread Pool -- 42) WFLYNAM0001: Activating Naming Subsystem
14:04:59,519 INFO [org.wildfly.extension.microprofile.openapi.smallrye] (ServerService Thread Pool -- 40) WFLYMPOAI0001: Activating Eclipse MicroProfile OpenAPI Subsystem
14:04:59,522 INFO [org.wildfly.extension.io] (ServerService Thread Pool -- 32) WFLYIO001: Worker 'default' has auto-configured to 24 IO threads with 192 max task threads based on your 12 available processors
14:04:59,520 WARN [org.jboss.as.txn] (ServerService Thread Pool -- 45) WFLYTX0013: The node-identifier attribute on the /subsystem=transactions is set to the default value. This is a danger for environments running multiple servers. Please make sure the attribute value is unique.
14:04:59,524 INFO [org.wildfly.extension.microprofile.health.smallrye] (ServerService Thread Pool -- 38) WFLYHEALTH0001: Activating Eclipse MicroProfile Health Subsystem
14:04:59,521 INFO [org.wildfly.extension.microprofile.opentracing] (ServerService Thread Pool -- 41) WFLYTRACEXT0001: Activating MicroProfile OpenTracing Subsystem
14:04:59,537 INFO [org.jboss.as.connector.subsystems.datasources] (ServerService Thread Pool -- 28) WFLYJCA0004: Deploying JDBC-compliant driver class org.h2.Driver (version 1.4)
14:04:59,542 INFO [org.jboss.as.connector.deployers.jdbc] (MSC service thread 1-2) WFLYJCA0018: Started Driver service with driver-name = h2
14:04:59,545 INFO [org.jboss.as.naming] (MSC service thread 1-7) WFLYNAM0003: Starting Naming Service
14:04:59,546 INFO [org.wildfly.extension.microprofile.metrics.smallrye] (ServerService Thread Pool -- 39) WFLYMETRICS0001: Activating Eclipse MicroProfile Metrics Subsystem
14:04:59,549 INFO [org.wildfly.extension.undertow] (MSC service thread 1-8) WFLYUT0003: Undertow 2.2.2.Final starting
14:04:59,555 INFO [org.jboss.remoting] (MSC service thread 1-3) JBoss Remoting version 5.0.19.Final
14:04:59,611 INFO [org.wildfly.extension.undertow] (MSC service thread 1-5) WFLYUT0012: Started server default-server.
14:04:59,612 INFO [org.wildfly.extension.undertow] (MSC service thread 1-2) WFLYUT0018: Host default-host starting
14:04:59,635 WARN [org.jboss.as.domain.http.api.undertow] (MSC service thread 1-3) WFLYDMHTTP0003: Unable to load console module for slot main, disabling console
14:04:59,641 INFO [org.jboss.as.patching] (MSC service thread 1-6) WFLYPAT0050: WildFly Full cumulative patch ID is: base, one-off patches include: none
14:04:59,646 INFO [org.wildfly.extension.undertow] (MSC service thread 1-8) WFLYUT0006: Undertow HTTP listener default listening on [0:0:0:0:0:0:0:0]:8080
14:04:59,654 WARN [org.jboss.as.domain.management.security] (MSC service thread 1-5) WFLYDM0111: Keystore /tmp/wildfly-bootable-server15172013110481762654/standalone/configuration/application.keystore not found, it will be auto generated on first use with a self signed certificate for host localhost
14:04:59,662 INFO [org.jboss.as.server.deployment] (MSC service thread 1-5) WFLYSRV0027: Starting deployment of "customers.war" (runtime-name: "ROOT.war")
14:04:59,743 INFO [org.jboss.as.connector.subsystems.datasources] (MSC service thread 1-5) WFLYJCA0001: Bound data source [java:jboss/datasources/ExampleDS]
14:05:01,202 INFO [org.jboss.as.jpa] (MSC service thread 1-5) WFLYJPA0002: Read persistence.xml for customers
14:05:01,324 INFO [org.jboss.weld.deployer] (MSC service thread 1-1) WFLYWELD0003: Processing weld deployment ROOT.war
14:05:01,536 INFO [org.hibernate.validator.internal.util.Version] (MSC service thread 1-1) HV000001: Hibernate Validator 6.0.21.Final
14:05:01,706 INFO [io.jaegertracing.internal.JaegerTracer] (MSC service thread 1-1) No shutdown hook registered: Please call close() manually on application shutdown.
14:05:01,721 ERROR [org.jboss.msc.service.fail] (MSC service thread 1-4) MSC000001: Failed to start service jboss.deployment.unit."ROOT.war".INSTALL: org.jboss.msc.service.StartException in service jboss.deployment.unit."ROOT.war".INSTALL: WFLYSRV0153: Failed to process phase INSTALL of deployment "ROOT.war"
...
Caused by: org.jboss.as.server.deployment.DeploymentUnitProcessingException: java.lang.ClassNotFoundException: org.h2.jdbcx.JdbcDataSource from [Module "deployment.ROOT.war" from Service Module Loader]
The class org.h2.jdbcx.JdbcDataSource isn't found obviously. However, looking in the bootable JAR I see that in the modules directory:
[![modules][1]][1]
So, as shown above, the modules directory contains a module named "com.h2database.h2" and here is the content of the associated module.xml file:
<?xml version="1.0" encoding="UTF-8"?>
<module name="com.h2database.h2" xmlns="urn:jboss:module:1.5">
<resources>
<resource-root path="h2-1.4.197.jar"/>
</resources>
<dependencies>
<module name="javax.api"/>
<module name="javax.transaction.api"/>
<module name="javax.servlet.api" optional="true"/>
</dependencies>
</module>
And here is the content of the h2-1.4.197.jar archive:
[![h2][2]][2]
Accordingly, the Wildfly server has a module named "com.h2database.h2" containing the required "org.h2.jdbcx.JdbcDtaSource" class.
So why does the CNFE is raised ? Last but not least, here is the datasource definition:
#Singleton
#DataSourceDefinition(
name = "java:jboss/datasources/ExampleDS",
className = "org.h2.jdbcx.JdbcDataSource",
url = "jdbc:h2:mem:customers",
user = "sa",
password = "sa",
databaseName = "customers")
public class DatasourceProducer
{
#Resource(lookup = "java:jboss/datasources/ExampleDS")
private DataSource ds;
#Produces
public DataSource getDatasource()
{
return ds;
}
}
And the persistence.xml file:
<?xml version="1.0" encoding="UTF-8"?>
<persistence version="2.0" xmlns="http://java.sun.com/xml/ns/persistence"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/persistence http://java.sun.com/xml/ns/persistence/persistence_2_0.xsd">
<persistence-unit name="customers" transaction-type="JTA">
<provider>org.hibernate.jpa.HibernatePersistenceProvider</provider>
<jta-data-source>java:jboss/datasources/ExampleDS</jta-data-source>
<properties>
<property name="wildfly.jpa.twophasebootstrap" value="false" />
<property name="hibernate.dialect" value="org.hibernate.dialect.Oracle12cDialect"/>
<property name="hibernate.hbm2ddl.auto" value="create-drop"/>
<property name="hibernate.format_sql" value="true"/>
<property name="hibernate.show_sql" value="true"/>
</properties>
</persistence-unit>
</persistence>
Could someone please shed some light here on this issue as I'm stuck since a couple of days :-(
Many thanks in advance.
Kind regards,
Seymour
[1]: https://i.stack.imgur.com/fUBOc.png
[2]: https://i.stack.imgur.com/mHaGb.png
Answering my own question.
It appears that simply defining the h2 dependency as follows:
<dependency>
<groupId>com.h2database</groupId>
<artifactId>h2</artifactId>
<scope>runtime</scope>
</dependency>
instead of:
<dependency>
<groupId>com.h2database</groupId>
<artifactId>h2</artifactId>
<scope>test</scope>
</dependency>
solves the problem.
I am using wildfly 14.0.1.Final server to deploy a spring war application. Passing some time after successful deployment, server automatically stopped by giving following log;
2019-03-24 11:27:31,002 INFO [org.jboss.as.repository] (ServerService Thread Pool -- 99) WFLYDR0009: Content /opt/wildfly-14.0.1.Final/standalone/data/content/b6/e85bb4bda330a5b3febd424d21871177d573f1 is obsolete and will be removed
2019-03-24 11:27:31,023 INFO [org.jboss.as.repository] (ServerService Thread Pool -- 99) WFLYDR0002: Content removed from location /opt/wildfly-14.0.1.Final/standalone/data/content/b6/e85bb4bda330a5b3febd424d21871177d573f1/content
2019-03-24 11:37:31,124 INFO [org.jboss.as.server] (Thread-2) WFLYSRV0236: Suspending server with no timeout.
2019-03-24 11:37:31,126 INFO [org.jboss.as.ejb3] (Thread-2) WFLYEJB0493: EJB subsystem suspension complete
2019-03-24 11:37:31,129 INFO [org.jboss.as.server] (Thread-2) WFLYSRV0220: Server shutdown has been requested via an OS signal
2019-03-24 11:37:31,173 INFO [org.jboss.as.connector.deployers.jdbc] (MSC service thread 1-3) WFLYJCA0019: Stopped Driver service with driver-name = UtilityMasterSatkhira.war_com.mysql.cj.jdbc.Driver_8_0
2019-03-24 11:37:31,191 INFO [org.jboss.as.mail.extension] (MSC service thread 1-2) WFLYMAIL0002: Unbound mail session [java:jboss/mail/Default]
2019-03-24 11:37:31,201 INFO [org.wildfly.extension.undertow] (ServerService Thread Pool -- 101) WFLYUT0022: Unregistered web context: '/UtilityMasterSatkhira' from server 'default-server'
2019-03-24 11:37:31,217 INFO [io.undertow.servlet] (ServerService Thread Pool -- 101) Destroying Spring FrameworkServlet 'mvc-dispatcher'
2019-03-24 11:37:31,217 INFO [org.springframework.web.context.support.XmlWebApplicationContext] (ServerService Thread Pool -- 101) Closing WebApplicationContext for namespace 'mvc-dispatcher-servlet': startup date [Sun Mar 24 11:17:53 BDT 2019]; parent: Root WebApplicationContext
2019-03-24 11:37:31,229 INFO [org.springframework.scheduling.concurrent.ThreadPoolTaskScheduler] (ServerService Thread Pool -- 101) Shutting down ExecutorService 'base_scheduler'
2019-03-24 11:37:31,245 INFO [io.undertow.servlet] (ServerService Thread Pool -- 101) Closing Spring root WebApplicationContext
2019-03-24 11:37:31,245 INFO [org.springframework.web.context.support.XmlWebApplicationContext] (ServerService Thread Pool -- 101) Closing Root WebApplicationContext: startup date [Sun Mar 24 11:17:45 BDT 2019]; root of context hierarchy
2019-03-24 11:37:31,259 INFO [org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean] (ServerService Thread Pool -- 101) Closing JPA EntityManagerFactory for persistence unit 'default'
2019-03-24 11:37:31,304 INFO [org.wildfly.extension.undertow] (MSC service thread 1-1) WFLYUT0019: Host default-host stopping
2019-03-24 11:37:31,307 INFO [org.jboss.as.connector.subsystems.datasources] (MSC service thread 1-4) WFLYJCA0010: Unbound data source [java:jboss/datasources/ExampleDS]
2019-03-24 11:37:31,310 INFO [org.jboss.as.connector.deployers.jdbc] (MSC service thread 1-4) WFLYJCA0019: Stopped Driver service with driver-name = h2
2019-03-24 11:37:31,338 INFO [org.wildfly.extension.undertow] (MSC service thread 1-4) WFLYUT0008: Undertow HTTP listener default suspending
2019-03-24 11:37:31,338 INFO [org.wildfly.extension.undertow] (MSC service thread 1-3) WFLYUT0008: Undertow HTTPS listener https suspending
2019-03-24 11:37:31,344 INFO [org.wildfly.extension.undertow] (MSC service thread 1-4) WFLYUT0007: Undertow HTTP listener default stopped, was bound to ip:80
2019-03-24 11:37:31,344 INFO [org.wildfly.extension.undertow] (MSC service thread 1-3) WFLYUT0007: Undertow HTTPS listener https stopped, was bound to ip:8443
2019-03-24 11:37:31,348 INFO [org.jboss.as.clustering.infinispan] (ServerService Thread Pool -- 108) WFLYCLINF0003: Stopped client-mappings cache from ejb container
2019-03-24 11:37:31,366 INFO [org.wildfly.extension.undertow] (MSC service thread 1-4) WFLYUT0004: Undertow 2.0.13.Final stopping
2019-03-24 11:37:31,489 INFO [org.jboss.as.server.deployment] (MSC service thread 1-1) WFLYSRV0028: Stopped deployment UtilityMasterSatkhira.war (runtime-name: UtilityMasterSatkhira.war) in 355ms
2019-03-24 11:37:31,494 INFO [org.jboss.as] (MSC service thread 1-1) WFLYSRV0050: WildFly Full 14.0.1.Final (WildFly Core 6.0.2.Final) stopped in 361ms
What would be the possible reason for auto shutdown?
Server Startup log
I did not encounter such a problem on my desktop, but mysql container was running very slowly in a way that I could not understand on my ubuntu laptop. Therefore, the keycloak server was constantly getting an error because the operating system sent a kill signal due to long running process. This solution save my day.
One reason I know can cause this is the user session.
If you are running Wildfly as application user ( not root ) then if you log off or disconnect all user sessions OS will send this shutdown signal and will bring down Wildfly.
If this is the case, you need to enable lingering for the user so then login off from all user sessions will not stop processes running with that application user.
To enable/disable lingering you can refer this link.
In my case it happened in a RHEL 7.9 (but I guess distro doesn't matter) installation where I had previously manually edited the /etc/hosts file for other tests.
My hosts file was like:
192.168.13.145 myservername
127.0.0.1 myservername
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
And wildfly administration console was listening on "localhost".
This somehow causes Wilfly to automatically shutdown few seconds after the startup.
By changing the hosts file back to:
192.168.13.145 myservername
127.0.0.1 localhost
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
it worked fine.
The line
WFLYSRV0220: Server shutdown has been requested via an OS signal
tells that you get a shutdown signal from the server. See also https://developer.jboss.org/wiki/MysteriousShutdowns
It suggests that you use the Java Option -Xrs to get fewer signals.
I am trying since few hours to bring this simple application to work on wildfly 12, which was working fine on tomcat. Any how below is log and config
Webappinitializer
#Configuration
public class ListenerConfig implements WebApplicationInitializer{
#Override
public void onStartup(final ServletContext servletContext) throws ServletException {
final AnnotationConfigWebApplicationContext root = new AnnotationConfigWebApplicationContext();
root.setServletContext(servletContext);
root.scan("com.app");
root.refresh();
final Dynamic servlet = servletContext.addServlet("spring", new DispatcherServlet(root));
servlet.setLoadOnStartup(1);
servlet.addMapping("/*");
servletContext.addListener(new ContextLoaderListener(root));
}
ApplicationConfig
#Configuration
#ComponentScan(basePackages = "com.app")
#PropertySource(value = { "classpath:jdbc.properties" })
#EnableTransactionManagement
public class ApplicationConfig {
MVCConfig
#Configuration
#EnableWebMvc
public class WebConfig extends WebMvcConfigurerAdapter{
#Override
public void configureMessageConverters( List<HttpMessageConverter<?>> converters ) {
converters.add(converter());
}
#Bean
public ViewResolver viewResolver() {
InternalResourceViewResolver viewResolver = new InternalResourceViewResolver();
viewResolver.setViewClass(JstlView.class);
viewResolver.setPrefix("/WEB-INF/views/");
viewResolver.setSuffix(".jsp");
return viewResolver;
}
#Bean
public UrlBasedViewResolver setupViewResolver() {
UrlBasedViewResolver resolver = new UrlBasedViewResolver();
resolver.setPrefix("/html/");
resolver.setSuffix(".jsp");
resolver.setViewClass(JstlView.class);
return resolver;
}
jboss-deployment-structure.xml
<?xml version="1.0" encoding="UTF-8"?>
<jboss-deployment-structure>
<deployment>
<dependencies>
<module name="javax.api"/>
<module name="javax.jms.api"/>
<module name="javax.servlet.api"/>
<module name="org.apache.log4j"/>
<module name="pluto.lib" />
</dependencies>
</deployment>
</jboss-deployment-structure>
Note I haven't provided complete code, if required will post it.
Finally what I get in log is below
22:36:39,374 INFO [org.jboss.as.connector.subsystems.datasources]
(MSC service thread 1-2) WFLYJCA0001: Bound data source
[java:jboss/datasources/ExampleDS] 22:36:40,290 INFO
[org.wildfly.extension.undertow] (MSC service thread 1-4) WFLYUT0006:
Undertow HTTPS listener https listening on 127.0.0.1:8443 22:36:40,504
INFO [org.jboss.ws.common.management] (MSC service thread 1-3)
JBWS022052: Starting JBossWS 5.2.0.Final (Apache CXF 3.2.2)
22:36:43,005 INFO [org.infinispan.factories.GlobalComponentRegistry]
(MSC service thread 1-4) ISPN000128: Infinispan version: Infinispan
'Bastille' 9.1.6.Final 22:36:43,650 INFO
[org.jboss.as.clustering.infinispan] (ServerService Thread Pool -- 62)
WFLYCLINF0002: Started client-mappings cache from ejb container
22:36:44,314 INFO [org.wildfly.extension.undertow] (ServerService
Thread Pool -- 64) WFLYUT0021: Registered web context: '/Pluto' for
server 'default-server' 22:36:44,412 INFO [org.jboss.as.server]
(ServerService Thread Pool -- 37) WFLYSRV0010: Deployed "Pluto.war"
(runtime-name : "Pluto.war") 22:36:44,857 INFO [org.jboss.as.server]
(Controller Boot Thread) WFLYSRV0212: Resuming server 22:36:44,863
INFO [org.jboss.as] (Controller Boot Thread) WFLYSRV0060: Http
management interface listening on http://127.0.0.1:9990/management
22:36:44,863 INFO [org.jboss.as] (Controller Boot Thread)
WFLYSRV0051: Admin console listening on http://127.0.0.1:9990
Pluto.war is application and I get 403 forbidden, I have tried multiple things, What I feel is Jboss is not able to pick dispatcher servlet at all, I have used spring with jboss as 7.1, but then it was xml config, I do not use maven so no pom.xml here, this same config is running fine in tomcat 8.
After removing custom lib and placed all the libs in web-inf/lib folder and deleted jboss-deployment-structure.xml from web-inf then its working fine. What wrong am I doing, in case of custom module? I created pluto.lib.main under modules folder and added this in standalone.xml
<subsystem xmlns="urn:jboss:domain:ee:4.0">
<global-modules>
<module name="pluto.lib" slot="main"/>
</global-modules>
Then I am facing 403 error
After a long pain-full debugging along with trial and error with different versions of spring and wild fly, I have come to a conclusion that my custom module which consists of spring 4.3 is not running on wildfly 12.
Anyhow the solution was to downgrade app server to wildfly 11. The very same module and .war runs smoothly on ver 11.
I enabled debug logs on ver 12, still there nothing in logs that could probably show the root cause, I think there is some bug associated to wildfy version 12 and spring.
As of now this seems to work fine, if anyone who is able to find solution for spring with java config on wildfly 12, please post an answer :)
I have a Java EE project that ran with WF-8 w/ HornetMQ:
--- Sever side was deployed as an .ear package.
--- Client side is a Java GUI that communicated with the server via JMS messaging.
It all worked when put away.
I’m trying to resurrect it using WF-10 w/ ArtemisMQ, and it’s killing me.
After clearing all the Exceptions dealing with Hornet -> Artemis, here’s where I am:
--- WF Console confirms gotest.ear deploys with no Exceptions. (Console out put on startup pasted below)
--- Client’s Eclipse console output confirms it has a Connection and that it sent an Object Message. (my formatted output is pasted below)
--- Standalone-full.xml shows the Queue my MDB listens to configured. AND WF browser console double confirms it. (Info on WF’s configuration also pasted below)
But my MDB will not write or log to the WF console at all. I.e. not even from its constructor method. And there is no response at all from it's onMessage () to messages sent from the Client.
I’m helpless, because I don’t get Exceptions anywhere to hint at what’s wrong.
Can anyone point me in the right direction?
Help!!
MDB CODE
(I’ve cut it to the bone until I can get it to write or log to the WF console acknowledging it is hearing messages.)
import javax.annotation.PostConstruct;
import javax.annotation.PreDestroy;
import javax.annotation.Resource;
import javax.ejb.ActivationConfigProperty;
import javax.ejb.MessageDriven;
import javax.ejb.MessageDrivenContext;
import javax.enterprise.context.ApplicationScoped;
import javax.jms.Message;
import javax.jms.MessageListener;
import javax.persistence.Transient;
import org.apache.log4j.Logger;
#MessageDriven(
activationConfig ={
#ActivationConfigProperty(propertyName="destinationType", propertyValue="javax.jms.Queue"),
#ActivationConfigProperty(propertyName="destination", propertyValue="jms/queue/sendToServerQueue"),
#ActivationConfigProperty(propertyName="acknowledgeMode", propertyValue = "Auto-acknowledge"),
})
public class GoMsgBean implements MessageListener {
final Logger logger = Logger.getLogger(GoMsgBean.class.getName());
public GoMsgBean () {
System.out.println("System.out message FROM GoMsgBean Constructor");
logger.info("Logger message FROM GoMsgBean Constructor");
}
#PostConstruct
public void myInit () {
System.out.println("System.out message FROM GoMsgBean PostConstruct");
logger.info("Logger message FROM GoMsgBean PostConstruct");
}
public void onMessage(Message msg) {
System.out.println("System.out message FROM GoMsgBean onMessage()");
logger.info("Logger message FROM GoMsgBean onMessage()");
}
}
STANDALONE-FULL.XML
<subsystem xmlns="urn:jboss:domain:messaging-activemq:1.0">
<server name="default">
. . .
<jms-queue name="ExpiryQueue" entries="java:/jms/queue/ExpiryQueue"/>
<jms-queue name="DLQ" entries="java:/jms/queue/DLQ"/>
<jms-queue name="SendToServerQueue" entries="java:jboss/exported/jms/queue/sendToServerQueue"/>
<jms-queue name="SendToClientQueue2" entries="java:jboss/exported/jms/queue/sendToClientQueue2"/>
. . .
<connection-factory name="RemoteConnectionFactory" entries="java:jboss/exported/jms/RemoteConnectionFactory" connectors="http-connector"/>
<pooled-connection-factory name="activemq-ra" entries="java:/JmsXA java:jboss/DefaultJMSConnectionFactory" connectors="in-vm" transaction="xa"/>
</server>
</subsystem>
WFLY localhost :9990 Console Configuration Details
Queues/Topics
Name: SendToServerQueue
JNDINames: java:jboss/exported/jms/queue/sendToServerQueue
**Durable?: true**
Selector: <blank>
Connection Factories
Name InVmConnectionFactory
JNDI java:/ConnectionFactory
Name: RemoteConnectionFactory
JNDI java:jboss/exported/jms/RemoteConnectionFactory
Security Settings
Pattern #
Role guest
Address Settings
Pattern #
Diverts No Items!
ECLIPSE CONSOLE OUTPUT (when client GUI opens)
(I’ve added an insane number of System.out.printlns to track what’s happening line by line. Each output string is prefaced by the Class.method () that’s writing the line.)
ECLIPSE CONSOLE OUTPUT when Client is opened
MsgCtrSnd.run () beg
MsgCtrSnd.run () Requesting InitialContext
CONNECTION VARIABLES
key: java.naming.provider.url value: http-remoting://localhost:8080
key: java.naming.factory.initial value: org.jboss.naming.remote.client.InitialContextFactory
key: java.naming.security.principal value: jmsUser
key: java.naming.security.credentials value: jmsUser123!
MsgCtrSnd.run () InitialContext OK: javax.naming.InitialContext#4135c3b
MsgCtrSnd.run () Look up ConnectionFactory with: "jms/RemoteConnectionFactory"
MsgCtrSnd.run () ConnectionFactory: Ok:
org.apache.activemq.artemis.jms.client.ActiveMQJMSConnectionFactory
MsgCtrSnd.run () Instantiating Connection
MsgCtrSnd.run () JMS Connection OK:
org.apache.activemq.artemis.jms.client.ActiveMQConnection#4d5d943d
Instantiating Session
MsgCtrSnd.run () JMS Session OK:
ActiveMQSession->ClientSessionImpl
[name=212aa734-90f5-11e7-aa7a-a3fb7876c1f2, username=appUser, closed=false, factory = org.apache.activemq.artemis.core.client.impl.ClientSessionFactoryImpl#2a4fb17b, metaData=(jms-session=,)]#368f2016
MsgCtrSnd.run () Lookup Queue w/ JNDI name: ["jms/queue/sendToServerQueue"]
MsgCtrSnd.run () Queue secured:
ActiveMQQueue[SendToServerQueue]IS NOT NULL
MsgCtrSnd.run () Instantiating Message Producer
MsgCtrSnd.run () Message Producer [IS NOT NULL]
ActiveMQMessageProducer->org.apache.activemq.artemis.core.client.impl.ClientProducerImpl#59474f18
MsgCtrSnd.run () Starting jmsConnection
MsgCtrSnd.run () JMS Send Connection : Ok.
MsgCtrSnd.run () end
ECLIPSE CONOSOLE OUTPUT (when client GUI is used to send message to log in)
Cntrl.executeMenuAction () beg
Cntrl.executeMenuAction () Switching to: Log In
Cntrl.loginSend () beg
Cntrl.loginSend () calling DataDialog.collectData()
Cntrl.loginSend () EntityFieldsCollector ok
Cntrl.loginSend () returned from DataDialog.collectData()
Cntrl.loginSend () EntityFieldsCollector contains 2 entries.
Cntrl.loginSend () key: Member ID: 308486 value: ID
Cntrl.loginSend () key: Member PW 308487 value: PW
Cntrl.loginSend () message center connection ok
MsgCtrSnd.sendMsg () beg
MsgCtrSnd.sendMsg () Action: Log In
MsgCtrSnd.sendMsg () clientHash: aaaaaa
MsgCtrSnd.sendMsg () memberId : ID
MsgCtrSnd.sendMsg () memberPw : PW
MsgCtrSnd.sendMsg () clientUserId : null
MsgCtrSnd.sendMsg () clientUserPw : null
MsgCtrSnd.sendMsg () calling createObjectMessage ()
MsgCtrSnd.sendMsg () ObjectMessage instantiated.
MsgCtrSnd.sendMsg () Object Message object: java.util.ArrayList
MsgCtrSnd.sendMsg () message sent.
MsgCtrSnd.sendMsg () end
Cntrl.loginSend () end
Cntrl.executeMenuAction () end
WILDFLY CONSOLE OUTPUT WHEN GOTEST.EAR IS DEPLOYED ON STARTUP
Calling "C:\ProgramFilesGeo\Wildfly\wildfly-10.1.0.Final\bin\standalone.conf.bat"
Setting JAVA property to "C:\Program Files\Java\jdk1.8.0_121\bin\java"
===============================================================================
JBoss Bootstrap Environment
JBOSS_HOME: "C:\ProgramFilesGeo\Wildfly\wildfly-10.1.0.Final"
JAVA: "C:\Program Files\Java\jdk1.8.0_121\bin\java"
JAVA_OPTS: "-Dprogram.name=standalone.bat -Xms64M -Xmx512M -XX:MetaspaceSize=96M -XX:MaxMetaspaceSize=256m -Djava.net.preferIPv4Stack=true -Djboss.modules.system.pkgs=org.jboss.byteman"
===============================================================================
INFO [org.jboss.modules] (main) JBoss Modules version 1.5.2.Final
INFO [org.jboss.msc] (main) JBoss MSC version 1.2.6.Final
INFO [org.jboss.as] (MSC service thread 1-7) WFLYSRV0049: WildFly Full 10.1.0.Final (WildFly Core 2.2.0.Final) starting
INFO [org.jboss.as.server] (Controller Boot Thread) WFLYSRV0039: Creating http management service using socket-binding (management-http)
INFO [org.xnio] (MSC service thread 1-3) XNIO version 3.4.0.Final
INFO [org.xnio.nio] (MSC service thread 1-3) XNIO NIO Implementation Version 3.4.0.Final
INFO [org.wildfly.iiop.openjdk] (ServerService Thread Pool -- 42) WFLYIIOP0001: Activating IIOP Subsystem
INFO [org.jboss.as.clustering.infinispan] (ServerService Thread Pool -- 41) WFLYCLINF0001: Activating Infinispan subsystem.
INFO [org.jboss.as.jsf] (ServerService Thread Pool -- 48) WFLYJSF0007: Activated the following JSF Implementations: [main]
INFO [org.jboss.as.connector] (MSC service thread 1-4) WFLYJCA0009: Starting JCA Subsystem (WildFly/IronJacamar 1.3.4.Final)
INFO [org.jboss.as.naming] (ServerService Thread Pool -- 52) WFLYNAM0001: Activating Naming Subsystem
INFO [org.jboss.as.webservices] (ServerService Thread Pool -- 62) WFLYWS0002: Activating WebServices Extension
INFO [org.jboss.as.security] (ServerService Thread Pool -- 59) WFLYSEC0002: Activating Security Subsystem
INFO [org.wildfly.extension.io] (ServerService Thread Pool -- 40) WFLYIO001: Worker 'default' has auto-configured to 16 core threads with 128 task threads based on your 8 available processors
INFO [org.jboss.as.security] (MSC service thread 1-7) WFLYSEC0001: Current PicketBox version=4.9.6.Final
INFO [org.wildfly.extension.undertow] (MSC service thread 1-3) WFLYUT0003: Undertow 1.4.0.Final starting
INFO [org.jboss.remoting] (MSC service thread 1-5) JBoss Remoting version 4.0.21.Final
INFO [org.jboss.as.naming] (MSC service thread 1-8) WFLYNAM0003: Starting Naming Service
INFO [org.jboss.as.mail.extension] (MSC service thread 1-8) WFLYMAIL0001: Bound mail session [java:jboss/mail/Default]
INFO [org.jboss.as.connector.subsystems.datasources] (ServerService Thread Pool -- 36) WFLYJCA0004: Deploying JDBC-compliant driver class org.h2.Driver (version 1.3)
INFO [org.jboss.as.connector.deployers.jdbc] (MSC service thread 1-7) WFLYJCA0018: Started Driver service with driver-name = h2
INFO [org.jboss.as.connector.subsystems.datasources] (ServerService Thread Pool -- 36) WFLYJCA0005: Deploying non-JDBC-compliant driver class org.mariadb.jdbc.Driver (version 1.5)
INFO [org.jboss.as.connector.deployers.jdbc] (MSC service thread 1-2) WFLYJCA0018: Started Driver service with driver-name = mysql
INFO [org.jboss.as.ejb3] (MSC service thread 1-8) WFLYEJB0481: Strict pool slsb-strict-max-pool is using a max instance size of 128 (per class), which is derived from thread worker pool sizing.
INFO [org.jboss.as.ejb3] (MSC service thread 1-5) WFLYEJB0482: Strict pool mdb-strict-max-pool is using a max instance size of 32 (per class), which is derived from the number of CPUs on this host.
INFO [org.wildfly.extension.undertow] (ServerService Thread Pool -- 61) WFLYUT0014: Creating file handler for path 'C:\ProgramFilesGeo\Wildfly\wildfly-10.1.0.Final/welcome-content' with options [directory-listing: 'false', follow-symlink: 'false', case-sensitive: 'true', safe-symlink-paths: '[]']
INFO [org.wildfly.extension.undertow] (MSC service thread 1-1) WFLYUT0012: Started server default-server.
INFO [org.wildfly.extension.undertow] (MSC service thread 1-5) WFLYUT0018: Host default-host starting
INFO [org.wildfly.extension.undertow] (MSC service thread 1-8) WFLYUT0006: Undertow HTTP listener default listening on 127.0.0.1:8080
INFO [org.jboss.as.connector.subsystems.datasources] (MSC service thread 1-8) WFLYJCA0001: Bound data source [java:jboss/datasources/ExampleDS]
INFO [org.jboss.as.connector.subsystems.datasources] (MSC service thread 1-1) WFLYJCA0001: Bound data source [java:jboss/jdbc/gotestdb]
INFO [org.jboss.as.connector.subsystems.datasources] (MSC service thread 1-5) WFLYJCA0001: Bound data source [java:jboss/jdbc/tappdb]
INFO [org.wildfly.extension.messaging-activemq] (MSC service thread 1-4) WFLYMSGAMQ0001: AIO wasn't located on this platform, it will fall back to using pure Java NIO.
WARN [org.jboss.as.domain.management.security] (MSC service thread 1-2) WFLYDM0111: Keystore C:\ProgramFilesGeo\Wildfly\wildfly-10.1.0.Final\standalone\configuration\application.keystore not found, it will be auto generated on first use with a self signed certificate for host localhost
INFO [org.jboss.as.server.deployment] (MSC service thread 1-6) WFLYSRV0027: Starting deployment of "GoTest.ear" (runtime-name: "GoTest.ear")
INFO [org.jboss.as.server.deployment.scanner] (MSC service thread 1-1) WFLYDS0013: Started FileSystemDeploymentService for directory C:\ProgramFilesGeo\Wildfly\wildfly-10.1.0.Final\standalone\deployments
INFO [org.wildfly.iiop.openjdk] (MSC service thread 1-3) WFLYIIOP0009: CORBA ORB Service started
INFO [org.apache.activemq.artemis.core.server] (ServerService Thread Pool -- 64) AMQ221000: live Message Broker is starting with configuration Broker Configuration (clustered=false,journalDirectory=C:\ProgramFilesGeo\Wildfly\wildfly-10.1.0.Final\standalone\data\activemq\journal,bindingsDirectory=C:\ProgramFilesGeo\Wildfly\wildfly-10.1.0.Final\standalone\data\activemq\bindings,largeMessagesDirectory=C:\ProgramFilesGeo\Wildfly\wildfly-10.1.0.Final\standalone\data\activemq\largemessages,pagingDirectory=C:\ProgramFilesGeo\Wildfly\wildfly-10.1.0.Final\standalone\data\activemq\paging)
INFO [org.infinispan.factories.GlobalComponentRegistry] (MSC service thread 1-6) ISPN000128: Infinispan version: Infinispan 'Chakra' 8.2.4.Final
INFO [org.apache.activemq.artemis.core.server] (ServerService Thread Pool -- 64) AMQ221013: Using NIO Journal
INFO [org.infinispan.configuration.cache.EvictionConfigurationBuilder] (ServerService Thread Pool -- 66) ISPN000152: Passivation configured without an eviction policy being selected. Only manually evicted entities will be passivated.
INFO [org.infinispan.configuration.cache.EvictionConfigurationBuilder] (ServerService Thread Pool -- 72) ISPN000152: Passivation configured without an eviction policy being selected. Only manually evicted entities will be passivated.
INFO [org.infinispan.configuration.cache.EvictionConfigurationBuilder] (ServerService Thread Pool -- 66) ISPN000152: Passivation configured without an eviction policy being selected. Only manually evicted entities will be passivated.
INFO [org.infinispan.configuration.cache.EvictionConfigurationBuilder] (ServerService Thread Pool -- 71) ISPN000152: Passivation configured without an eviction policy being selected. Only manually evicted entities will be passivated.
INFO [org.infinispan.configuration.cache.EvictionConfigurationBuilder] (ServerService Thread Pool -- 72) ISPN000152: Passivation configured without an eviction policy being selected. Only manually evicted entities will be passivated.
INFO [org.infinispan.configuration.cache.EvictionConfigurationBuilder] (ServerService Thread Pool -- 71) ISPN000152: Passivation configured without an eviction policy being selected. Only manually evicted entities will be passivated.
INFO [org.jboss.as.server.deployment] (MSC service thread 1-3) WFLYSRV0207: Starting subdeployment (runtime-name: "GoTest.jar")
INFO [org.apache.activemq.artemis.core.server] (ServerService Thread Pool -- 64) AMQ221043: Protocol module found: [artemis-server]. Adding protocol support for: CORE
INFO [org.apache.activemq.artemis.core.server] (ServerService Thread Pool -- 64) AMQ221043: Protocol module found: [artemis-amqp-protocol]. Adding protocol support for: AMQP
INFO [org.apache.activemq.artemis.core.server] (ServerService Thread Pool -- 64) AMQ221043: Protocol module found: [artemis-hornetq-protocol]. Adding protocol support for: HORNETQ
INFO [org.apache.activemq.artemis.core.server] (ServerService Thread Pool -- 64) AMQ221043: Protocol module found: [artemis-stomp-protocol]. Adding protocol support for: STOMP
INFO [org.wildfly.extension.undertow] (MSC service thread 1-6) WFLYUT0006: Undertow HTTPS listener https listening on 127.0.0.1:8443
INFO [org.jboss.ws.common.management] (MSC service thread 1-3) JBWS022052: Starting JBossWS 5.1.5.Final (Apache CXF 3.1.6)
INFO [org.jboss.as.jpa] (MSC service thread 1-8) WFLYJPA0002: Read persistence.xml for GoTestDataBase
INFO [org.jboss.as.jpa] (ServerService Thread Pool -- 71) WFLYJPA0010: Starting Persistence Unit (phase 1 of 2) Service 'GoTest.ear/GoTest.jar#GoTestDataBase'
INFO [org.jboss.weld.deployer] (MSC service thread 1-8) WFLYWELD0003: Processing weld deployment GoTest.ear
INFO [org.hibernate.jpa.internal.util.LogHelper] (ServerService Thread Pool -- 71) HHH000204: Processing PersistenceUnitInfo [
name: GoTestDataBase
...]
INFO [org.wildfly.extension.messaging-activemq] (MSC service thread 1-5) WFLYMSGAMQ0016: Registered HTTP upgrade for activemq-remoting protocol handled by http-acceptor acceptor
INFO [org.wildfly.extension.messaging-activemq] (MSC service thread 1-1) WFLYMSGAMQ0016: Registered HTTP upgrade for activemq-remoting protocol handled by http-acceptor acceptor
INFO [org.wildfly.extension.messaging-activemq] (MSC service thread 1-7) WFLYMSGAMQ0016: Registered HTTP upgrade for activemq-remoting protocol handled by http-acceptor-throughput acceptor
INFO [org.wildfly.extension.messaging-activemq] (MSC service thread 1-2) WFLYMSGAMQ0016: Registered HTTP upgrade for activemq-remoting protocol handled by http-acceptor-throughput acceptor
INFO [org.hibernate.validator.internal.util.Version] (MSC service thread 1-8) HV000001: Hibernate Validator 5.2.4.Final
INFO [org.hibernate.Version] (ServerService Thread Pool -- 71) HHH000412: Hibernate Core {5.0.10.Final}
INFO [org.hibernate.cfg.Environment] (ServerService Thread Pool -- 71) HHH000206: hibernate.properties not found
INFO [org.hibernate.cfg.Environment] (ServerService Thread Pool -- 71) HHH000021: Bytecode provider name : javassist
INFO [org.hibernate.annotations.common.Version] (ServerService Thread Pool -- 71) HCANN000001: Hibernate Commons Annotations {5.0.1.Final}
INFO [org.apache.activemq.artemis.core.server] (ServerService Thread Pool -- 64) AMQ221007: Server is now live
INFO [org.apache.activemq.artemis.core.server] (ServerService Thread Pool -- 64) AMQ221001: Apache ActiveMQ Artemis Message Broker version 1.1.0.wildfly-017 [nodeID=e2b89808-fdf2-11e6-9f54-3956fe24eb2d]
INFO [org.apache.activemq.artemis.core.server] (ServerService Thread Pool -- 64) AMQ221003: trying to deploy queue jms.queue.SendToServerQueue
INFO [org.apache.activemq.artemis.core.server] (ServerService Thread Pool -- 67) AMQ221003: trying to deploy queue jms.queue.DLQ
INFO [org.wildfly.extension.messaging-activemq] (ServerService Thread Pool -- 72) WFLYMSGAMQ0002: Bound messaging object to jndi name java:jboss/exported/jms/RemoteConnectionFactory
INFO [org.apache.activemq.artemis.core.server] (ServerService Thread Pool -- 70) AMQ221003: trying to deploy queue jms.queue.SendToClientQueue2
INFO [org.wildfly.extension.messaging-activemq] (ServerService Thread Pool -- 65) WFLYMSGAMQ0002: Bound messaging object to jndi name java:/ConnectionFactory
INFO [org.apache.activemq.artemis.core.server] (ServerService Thread Pool -- 66) AMQ221003: trying to deploy queue jms.queue.ExpiryQueue
INFO [org.jboss.weld.deployer] (MSC service thread 1-8) WFLYWELD0003: Processing weld deployment GoTest.jar
INFO [org.jboss.as.ejb3.deployment] (MSC service thread 1-8) WFLYEJB0473: JNDI bindings for session bean named 'EnrollerBean' in deployment unit 'subdeployment "GoTest.jar" of deployment "GoTest.ear"' are as follows:
java:global/GoTest/GoTest/EnrollerBean!org.america3.gotest.server.sessionbeans.EnrollerBean
java:app/GoTest/EnrollerBean!org.america3.gotest.server.sessionbeans.EnrollerBean
java:module/EnrollerBean!org.america3.gotest.server.sessionbeans.EnrollerBean
java:global/GoTest/GoTest/EnrollerBean
java:app/GoTest/EnrollerBean
java:module/EnrollerBean
INFO [org.jboss.as.ejb3.deployment] (MSC service thread 1-8) WFLYEJB0473: JNDI bindings for session bean named 'ExiterBean' in deployment unit 'subdeployment "GoTest.jar" of deployment "GoTest.ear"' are as follows:
java:global/GoTest/GoTest/ExiterBean!org.america3.gotest.server.sessionbeans.ExiterBean
java:app/GoTest/ExiterBean!org.america3.gotest.server.sessionbeans.ExiterBean
java:module/ExiterBean!org.america3.gotest.server.sessionbeans.ExiterBean
java:global/GoTest/GoTest/ExiterBean
java:app/GoTest/ExiterBean
java:module/ExiterBean
INFO [org.jboss.as.ejb3.deployment] (MSC service thread 1-8) WFLYEJB0473: JNDI bindings for session bean named 'LoginerBean' in deployment unit 'subdeployment "GoTest.jar" of deployment "GoTest.ear"' are as follows:
java:global/GoTest/GoTest/LoginerBean!org.america3.gotest.server.sessionbeans.LoginerBean
java:app/GoTest/LoginerBean!org.america3.gotest.server.sessionbeans.LoginerBean
java:module/LoginerBean!org.america3.gotest.server.sessionbeans.LoginerBean
java:global/GoTest/GoTest/LoginerBean
java:app/GoTest/LoginerBean
java:module/LoginerBean
INFO [org.jboss.as.ejb3.deployment] (MSC service thread 1-8) WFLYEJB0473: JNDI bindings for session bean named 'LogouterBean' in deployment unit 'subdeployment "GoTest.jar" of deployment "GoTest.ear"' are as follows:
java:global/GoTest/GoTest/LogouterBean!org.america3.gotest.server.sessionbeans.LogouterBean
java:app/GoTest/LogouterBean!org.america3.gotest.server.sessionbeans.LogouterBean
java:module/LogouterBean!org.america3.gotest.server.sessionbeans.LogouterBean
java:global/GoTest/GoTest/LogouterBean
java:app/GoTest/LogouterBean
java:module/LogouterBean
INFO [org.jboss.as.ejb3.deployment] (MSC service thread 1-8) WFLYEJB0473: JNDI bindings for session bean named 'ReplierBean' in deployment unit 'subdeployment "GoTest.jar" of deployment "GoTest.ear"' are as follows:
java:global/GoTest/GoTest/ReplierBean!org.america3.gotest.server.sessionbeans.ReplierBean
java:app/GoTest/ReplierBean!org.america3.gotest.server.sessionbeans.ReplierBean
java:module/ReplierBean!org.america3.gotest.server.sessionbeans.ReplierBean
java:global/GoTest/GoTest/ReplierBean
java:app/GoTest/ReplierBean
java:module/ReplierBean
INFO [org.jboss.as.connector.deployment] (MSC service thread 1-5) WFLYJCA0007: Registered connection factory java:/JmsXA
INFO [org.apache.activemq.artemis.ra] (MSC service thread 1-5) Resource adaptor started
INFO [org.jboss.as.connector.services.resourceadapters.ResourceAdapterActivatorService$ResourceAdapterActivator] (MSC service thread 1-5) IJ020002: Deployed: file://RaActivatoractivemq-ra
INFO [org.jboss.as.connector.deployment] (MSC service thread 1-4) WFLYJCA0002: Bound JCA ConnectionFactory [java:/JmsXA]
INFO [org.wildfly.extension.messaging-activemq] (MSC service thread 1-2) WFLYMSGAMQ0002: Bound messaging object to jndi name java:jboss/DefaultJMSConnectionFactory
INFO [org.jboss.weld.Version] (MSC service thread 1-8) WELD-000900: 2.3.5 (Final)
INFO [org.infinispan.configuration.cache.EvictionConfigurationBuilder] (ServerService Thread Pool -- 71) ISPN000152: Passivation configured without an eviction policy being selected. Only manually evicted entities will be passivated.
INFO [org.infinispan.configuration.cache.EvictionConfigurationBuilder] (ServerService Thread Pool -- 71) ISPN000152: Passivation configured without an eviction policy being selected. Only manually evicted entities will be passivated.
INFO [org.jboss.as.jpa] (ServerService Thread Pool -- 66) WFLYJPA0010: Starting Persistence Unit (phase 2 of 2) Service 'GoTest.ear/GoTest.jar#GoTestDataBase'
INFO [org.jboss.as.ejb3] (MSC service thread 1-8) WFLYEJB0042: Started message driven bean 'GoMsgBean' with 'activemq-ra.rar' resource adapter
INFO [org.hibernate.dialect.Dialect] (ServerService Thread Pool -- 66) HHH000400: Using dialect: org.hibernate.dialect.MySQL5Dialect
INFO [org.hibernate.envers.boot.internal.EnversServiceImpl] (ServerService Thread Pool -- 66) Envers integration enabled? : true
INFO [org.jboss.as.clustering.infinispan] (ServerService Thread Pool -- 71) WFLYCLINF0002: Started client-mappings cache from ejb container
Member.<init>................................beg
Member.<init>................................Hello World. See! I can Log messages again.
Member.<init>................................end
INFO [org.hibernate.hql.internal.QueryTranslatorFactoryInitiator] (ServerService Thread Pool -- 66) HHH000397: Using ASTQueryTranslatorFactory
INFO [org.jboss.as.server] (ServerService Thread Pool -- 37) WFLYSRV0010: Deployed "GoTest.ear" (runtime-name : "GoTest.ear")
INFO [org.apache.activemq.artemis.ra] (default-threads - 1) AMQ151000: awaiting topic/queue creation jms/queue/sendToServerQueue
INFO [org.jboss.as] (Controller Boot Thread) WFLYSRV0060: Http management interface listening on http://127.0.0.1:9990/management
INFO [org.jboss.as] (Controller Boot Thread) WFLYSRV0051: Admin console listening on http://127.0.0.1:9990
INFO [org.jboss.as] (Controller Boot Thread) WFLYSRV0025: WildFly Full 10.1.0.Final (WildFly Core 2.2.0.Final) started in 5392ms - Started 691 of 931 services (430 services are lazy, passive or on-demand)
WILDFLY CONSOLE OUTPUT AFTER DEPLOYEMENT THAT SEEMS TO BE THE PROBLEM.
Note: the next INFO line says the jms/queue/sendToServerQueue is NOT durable, while WF Console says its configured to be durable)
INFO [org.apache.activemq.artemis.ra] (default-threads - 1) AMQ151001: Attempting to reconnect org.apache.activemq.artemis.ra.inflow.ActiveMQActivationSpec(ra=org.apache.activemq.artemis.ra.ActiveMQResourceAdapter#78712571 destination=jms/queue/sendToServerQueue destinationType=javax.jms.Queue ack=Auto-acknowledge durable=false clientID=null user=null maxSession=15)
This is in reference to J. R. Perkins below concerning whether there was a log4j.xml in the deployment. This is another excerpt from WF’s standalone-full.xml I use for logging if I can ever get my MDB to even write to System.out:
<profile>
<subsystem xmlns="urn:jboss:domain:logging:3.0">
<console-handler name="CONSOLE">
<level name="INFO"/>
<formatter><named-formatter name="COLOR-PATTERN"/></formatter>
</console-handler>
<console-handler name="MY-CONSOLE" autoflush="true">
<formatter><named-formatter name="MY-PATTERN"/></formatter>
<target name="System.out"/>
</console-handler>
<console-handler name="GOTEST-HANDLER">
<level name="INFO"/>
<formatter><named-formatter name="GOTEST-PATTERN"/></formatter>
</console-handler>
. . .
<logger category="org.america3.gotest" use-parent-handlers="false">
<level name="ALL"/>
<handlers><handler name="GOTEST-HANDLER"/></handlers>
</logger>
<logger category="com.arjuna">
<level name="WARN"/>
</logger>
<logger category="org.jboss.as.config">
<level name="DEBUG"/>
</logger>
<logger category="sun.rmi">
<level name="WARN"/>
</logger>
<root-logger>
<level name="INFO"/>
<handlers><handler name="CONSOLE"/><handler name="FILE"/></handlers>
</root-logger>
<formatter name="PATTERN">
<pattern-formatter pattern="%d{yyyy-MM-dd HH:mm:ss,SSS} %-5p [%c] (%t) %s%e%n"/>
</formatter>
<formatter name="COLOR-PATTERN">
<pattern-formatter pattern="%K{level}%d{HH:mm:ss,SSS} %-5p [%c] (%t) %s%e%n"/>
</formatter>
<formatter name="MY-PATTERN">
<pattern-formatter pattern="MeMeMe%s%n"/>
</formatter>
<formatter name="GOTEST-PATTERN">
<pattern-formatter pattern="%s%n"/>
</formatter>
</subsystem>
. . .
</profile>
I believe the problem is logged here:
INFO [org.apache.activemq.artemis.ra] (default-threads - 1) AMQ151000: awaiting topic/queue creation jms/queue/sendToServerQueue
In other words, the MDB is not fully activated because it can't find the destination "jms/queue/sendToServerQueue". I believe this is because you haven't defined the JNDI bindings properly (since you've only defined an "exported" entry). Try using this:
<jms-queue name="SendToServerQueue" entries="java:jboss/exported/jms/queue/sendToServerQueue java:/jms/queue/sendToServerQueue"/>
Things to do to diagnose issues like this:
Read the log carefully for helpful information.
Check the consumerCount of the queue from which the MDB is supposed to receive messages. If it's 0 then it means there's a problem with the MDB.
I have maven multi-module project with Spring 4, DataNucleus 4, and Postgres 9 on JBoss Wildfly.
I want configure their for work together.
But now DataNucleus do not auto create table on databases.
Here my pom of "persistance" maven module :
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<parent>
<artifactId>somem</artifactId>
<groupId>somem</groupId>
<version>1.0-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>persistence</artifactId>
<packaging>jar</packaging>
<name>persistence</name>
<url>http://maven.apache.org</url>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>3.8.1</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>javax.jdo</groupId>
<artifactId>jdo-api</artifactId>
<version>3.0.1</version>
</dependency>
<dependency>
<groupId>org.datanucleus</groupId>
<artifactId>datanucleus-core</artifactId>
<version>4.0.4</version>
</dependency>
<dependency>
<groupId>org.datanucleus</groupId>
<artifactId>datanucleus-api-jdo</artifactId>
<version>4.0.5</version>
</dependency>
<dependency>
<groupId>org.datanucleus</groupId>
<artifactId>datanucleus-rdbms</artifactId>
<version>4.0.7</version>
</dependency>
<dependency>
<artifactId>spring-orm</artifactId>
<groupId>org.springframework</groupId>
<version>${spring.version}</version>
</dependency>
<dependency>
<groupId>org.postgresql</groupId>
<artifactId>postgresql</artifactId>
<version>9.3-1102-jdbc41</version>
</dependency>
</dependencies>
</project>
this is a User entity :
#PersistenceCapable
public class User {
#PrimaryKey
#Persistent( valueStrategy = IdGeneratorStrategy.IDENTITY )
private Long id;
#Persistent
private String name;
public User() {}
public Long getId() {
return id;
}
public void setId(Long id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
my JDOConfigure with Spring
#Configuration
#EnableTransactionManagement
public class JDOConfiguration{
#Bean
public PersistenceManagerFactory persistenceManagerFactory() {
PersistenceManagerFactory persistenceManagerFactory = JDOHelper.getPersistenceManagerFactory("jdo.properties");
return persistenceManagerFactory;
}
#Bean
public JdoTransactionManager JdoTransactionManager() {
JdoTransactionManager JdoTransactionManager = new JdoTransactionManager();
JdoTransactionManager.setPersistenceManagerFactory(persistenceManagerFactory());
return JdoTransactionManager;
}
}
and jdo.properties as config for PersistenceManagerFactory :
datanucleus.autoCreateSchema=true
javax.jdo.PersistenceManagerFactoryClass=org.datanucleus.api.jdo.JDOPersistenceManagerFactory
javax.jdo.option.ConnectionURL= jdbc:postgresql://localhost/somem
javax.jdo.option.ConnectionUserName = dom
javax.jdo.option.ConnectionPassword = dom
javax.jdo.option.ConnectionDriverName = org.postgresql.Driver
Why datanucleus don't create a User table on database?
My output :
/usr/lib/jvm/oracle/jdk1.7.0_21/bin/java -classpath /home/user/software/idea-IU-139.659.2/lib/idea_rt.jar:/home/user/software/idea-IU-139.659.2/lib/util.jar -Dfile.encoding=UTF-8 com.intellij.rt.execution.CommandLineWrapper /tmp/classpath0.tmp com.intellij.javaee.oss.process.JavaeeProcess 37134 com.intellij.javaee.oss.jboss.agent.JBoss71Agent
/home/user/software/wildfly-8.2.0.Final/bin/standalone.sh
[2015-02-06 03:23:19,788] Artifact admin:war: Server is not connected. Deploy is not available.
=========================================================================
[2015-02-06 03:23:19,789] Artifact web:war: Server is not connected. Deploy is not available.
Detected server admin port: 9990
JBoss Bootstrap Environment
Detected server http port: 8080
JBOSS_HOME: /home/user/software/wildfly-8.2.0.Final
JAVA: /usr/lib/jvm/oracle/jdk1.7.0_21/bin/java
JAVA_OPTS: -server -Xms64m -Xmx512m -XX:MaxPermSize=256m -Djava.net.preferIPv4Stack=true -Djboss.modules.system.pkgs=org.jboss.byteman -Djava.awt.headless=true
=========================================================================
[0m03:23:18,776 INFO [org.jboss.modules] (main) JBoss Modules version 1.3.3.Final
[0m[0m03:23:19,437 INFO [org.jboss.msc] (main) JBoss MSC version 1.2.2.Final
[0m[0m03:23:19,640 INFO [org.jboss.as] (MSC service thread 1-7) JBAS015899: WildFly 8.2.0.Final "Tweek" starting
[0m[0m03:23:21,824 INFO [org.jboss.as.server] (Controller Boot Thread) JBAS015888: Creating http management service using socket-binding (management-http)
[0m[0m03:23:21,854 INFO [org.xnio] (MSC service thread 1-1) XNIO version 3.3.0.Final
[0m[0m03:23:21,881 INFO [org.xnio.nio] (MSC service thread 1-1) XNIO NIO Implementation Version 3.3.0.Final
[0m[0m03:23:21,918 INFO [org.wildfly.extension.io] (ServerService Thread Pool -- 31) WFLYIO001: Worker 'default' has auto-configured to 8 core threads with 64 task threads based on your 4 available processors
[0m[0m03:23:21,922 INFO [org.jboss.as.clustering.infinispan] (ServerService Thread Pool -- 32) JBAS010280: Activating Infinispan subsystem.
[0m[0m03:23:21,965 INFO [org.jboss.as.jsf] (ServerService Thread Pool -- 38) JBAS012615: Activated the following JSF Implementations: [main]
[0m[0m03:23:21,982 INFO [org.jboss.as.naming] (ServerService Thread Pool -- 40) JBAS011800: Activating Naming Subsystem
[0m[0m03:23:21,985 INFO [org.jboss.as.security] (ServerService Thread Pool -- 45) JBAS013171: Activating Security Subsystem
[0m[0m03:23:21,988 INFO [org.jboss.as.security] (MSC service thread 1-4) JBAS013170: Current PicketBox version=4.0.21.Final
[0m[0m03:23:21,999 INFO [org.jboss.as.connector.subsystems.datasources] (ServerService Thread Pool -- 27) JBAS010403: Deploying JDBC-compliant driver class org.h2.Driver (version 1.3)
[0m[33m03:23:22,016 WARN [org.jboss.as.txn] (ServerService Thread Pool -- 46) JBAS010153: Node identifier property is set to the default value. Please make sure it is unique.
[0m[0m03:23:22,027 INFO [org.jboss.as.connector.logging] (MSC service thread 1-7) JBAS010408: Starting JCA Subsystem (IronJacamar 1.1.9.Final)
[0m[0m03:23:22,051 INFO [org.wildfly.extension.undertow] (MSC service thread 1-5) JBAS017502: Undertow 1.1.0.Final starting
[0m[0m03:23:22,051 INFO [org.wildfly.extension.undertow] (ServerService Thread Pool -- 47) JBAS017502: Undertow 1.1.0.Final starting
[0m[0m03:23:22,061 INFO [org.jboss.as.connector.deployers.jdbc] (MSC service thread 1-8) JBAS010417: Started Driver service with driver-name = h2
[0m[0m03:23:22,070 INFO [org.jboss.as.naming] (MSC service thread 1-8) JBAS011802: Starting Naming Service
[0m[0m03:23:22,071 INFO [org.jboss.as.mail.extension] (MSC service thread 1-8) JBAS015400: Bound mail session [java:jboss/mail/Default]
[0m[0m03:23:22,072 INFO [org.jboss.as.webservices] (ServerService Thread Pool -- 48) JBAS015537: Activating WebServices Extension
[0m[0m03:23:22,126 INFO [org.jboss.remoting] (MSC service thread 1-1) JBoss Remoting version 4.0.6.Final
[0m[0m03:23:22,394 INFO [org.wildfly.extension.undertow] (ServerService Thread Pool -- 47) JBAS017527: Creating file handler for path /home/user/software/wildfly-8.2.0.Final/welcome-content
[0m[0m03:23:22,472 INFO [org.wildfly.extension.undertow] (MSC service thread 1-3) JBAS017525: Started server default-server.
[0m[0m03:23:22,489 INFO [org.wildfly.extension.undertow] (MSC service thread 1-7) JBAS017531: Host default-host starting
[0m[0m03:23:22,645 INFO [org.wildfly.extension.undertow] (MSC service thread 1-8) JBAS017519: Undertow HTTP listener default listening on /127.0.0.1:8080
[0m[0m03:23:23,195 INFO [org.jboss.as.server.deployment.scanner] (MSC service thread 1-6) JBAS015012: Started FileSystemDeploymentService for directory /home/user/software/wildfly-8.2.0.Final/standalone/deployments
[0m[0m03:23:23,205 INFO [org.jboss.as.connector.subsystems.datasources] (MSC service thread 1-5) JBAS010400: Bound data source [java:jboss/datasources/ExampleDS]
[0m[0m03:23:23,562 INFO [org.jboss.ws.common.management] (MSC service thread 1-4) JBWS022052: Starting JBoss Web Services - Stack CXF Server 4.3.2.Final
[0m[0m03:23:23,777 INFO [org.jboss.as] (Controller Boot Thread) JBAS015961: Http management interface listening on http://127.0.0.1:9990/management
[0m[0m03:23:23,778 INFO [org.jboss.as] (Controller Boot Thread) JBAS015951: Admin console listening on http://127.0.0.1:9990
[0m[0m03:23:23,779 INFO [org.jboss.as] (Controller Boot Thread) JBAS015874: WildFly 8.2.0.Final "Tweek" started in 5650ms - Started 184 of 234 services (82 services are lazy, passive or on-demand)
[0mConnected to server
[2015-02-06 03:23:23,964] Artifact admin:war: Artifact is being deployed, please wait...
[2015-02-06 03:23:23,965] Artifact web:war: Artifact is being deployed, please wait...
[0m03:23:24,384 INFO [org.jboss.as.server.deployment] (MSC service thread 1-6) JBAS015876: Starting deployment of "admin.war" (runtime-name: "admin.war")
[0m[0m03:23:24,849 INFO [org.wildfly.extension.undertow] (MSC service thread 1-4) JBAS017534: Registered web context: /admin
[0m[0m03:23:25,335 INFO [org.jboss.as.server] (management-handler-thread - 3) JBAS018559: Deployed "admin.war" (runtime-name : "admin.war")
[0m[2015-02-06 03:23:25,366] Artifact admin:war: Artifact is deployed successfully
[2015-02-06 03:23:25,366] Artifact admin:war: Deploy took 1,402 milliseconds
[0m03:23:25,632 INFO [org.jboss.as.server.deployment] (MSC service thread 1-4) JBAS015876: Starting deployment of "web.war" (runtime-name: "web.war")
[0m[33m03:23:26,995 WARN [org.jboss.as.ee] (MSC service thread 1-2) JBAS011006: Not installing optional component org.springframework.http.server.ServletServerHttpAsyncRequestControl due to an exception (enable DEBUG log level to see the cause)
[0m[33m03:23:27,005 WARN [org.jboss.as.ee] (MSC service thread 1-2) JBAS011006: Not installing optional component org.springframework.web.context.request.async.StandardServletAsyncWebRequest due to an exception (enable DEBUG log level to see the cause)
[0m[0m03:23:27,084 INFO [org.jboss.as.connector.deployers.jdbc] (MSC service thread 1-2) JBAS010404: Deploying non-JDBC-compliant driver class org.postgresql.Driver (version 9.3)
[0m[0m03:23:27,102 INFO [org.jboss.as.connector.deployers.jdbc] (MSC service thread 1-5) JBAS010417: Started Driver service with driver-name = web.war_org.postgresql.Driver_9_3
[0m[0m03:23:27,140 INFO [io.undertow.servlet] (MSC service thread 1-4) Spring WebApplicationInitializers detected on classpath: [somem.web.configuration.WebAppInitializer#4aedfc7b]
[0m[0m03:23:27,193 INFO [stdout] (MSC service thread 1-4) test222
[0m[0m03:23:27,205 INFO [io.undertow.servlet] (MSC service thread 1-4) Initializing Spring root WebApplicationContext
[0m[0m03:23:27,208 INFO [org.springframework.web.context.ContextLoader] (MSC service thread 1-4) Root WebApplicationContext: initialization started
[0m[0m03:23:27,279 INFO [org.springframework.web.context.support.AnnotationConfigWebApplicationContext] (MSC service thread 1-4) Refreshing Root WebApplicationContext: startup date [Fri Feb 06 03:23:27 ICT 2015]; root of context hierarchy
[0m[0m03:23:27,352 INFO [org.springframework.web.context.support.AnnotationConfigWebApplicationContext] (MSC service thread 1-4) Registering annotated classes: [class somem.persistence.config.JDOConfiguration]
[0m[0m03:23:27,523 INFO [org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor] (MSC service thread 1-4) JSR-330 'javax.inject.Inject' annotation found and supported for autowiring
[0m[0m03:23:28,409 INFO [stdout] (MSC service thread 1-4) test system
[0m[0m03:23:28,451 INFO [org.springframework.web.context.ContextLoader] (MSC service thread 1-4) Root WebApplicationContext: initialization completed in 1243 ms
[0m[0m03:23:28,454 INFO [io.undertow.servlet] (MSC service thread 1-4) Initializing Spring FrameworkServlet 'dispatcher'
[0m[0m03:23:28,454 INFO [org.springframework.web.servlet.DispatcherServlet] (MSC service thread 1-4) FrameworkServlet 'dispatcher': initialization started
[0m[0m03:23:28,458 INFO [org.springframework.web.context.support.AnnotationConfigWebApplicationContext] (MSC service thread 1-4) Refreshing WebApplicationContext for namespace 'dispatcher-servlet': startup date [Fri Feb 06 03:23:28 ICT 2015]; parent: Root WebApplicationContext
[0m[0m03:23:28,460 INFO [org.springframework.web.context.support.AnnotationConfigWebApplicationContext] (MSC service thread 1-4) Registering annotated classes: [class somem.web.configuration.WebConfiguration]
[0m[0m03:23:28,600 INFO [org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor] (MSC service thread 1-4) JSR-330 'javax.inject.Inject' annotation found and supported for autowiring
[0m[0m03:23:28,844 INFO [org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping] (MSC service thread 1-4) Mapped "{[/],methods=[GET],params=[],headers=[],consumes=[],produces=[],custom=[]}" onto public java.lang.String somem.web.controller.MainController.test(javax.servlet.http.HttpServletResponse)
[0m[0m03:23:28,890 INFO [org.springframework.web.servlet.handler.SimpleUrlHandlerMapping] (MSC service thread 1-4) Mapped URL path [/resources/**] onto handler of type [class org.springframework.web.servlet.resource.ResourceHttpRequestHandler]
[0m[0m03:23:28,902 INFO [org.springframework.web.servlet.handler.SimpleUrlHandlerMapping] (MSC service thread 1-4) Mapped URL path [/**] onto handler of type [class org.springframework.web.servlet.resource.DefaultServletHttpRequestHandler]
[0m[0m03:23:29,235 INFO [org.hibernate.validator.internal.util.Version] (MSC service thread 1-4) HV000001: Hibernate Validator 5.1.3.Final
[0m[0m03:23:29,328 INFO [org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter] (MSC service thread 1-4) Looking for #ControllerAdvice: WebApplicationContext for namespace 'dispatcher-servlet': startup date [Fri Feb 06 03:23:28 ICT 2015]; parent: Root WebApplicationContext
[0m[0m03:23:29,414 INFO [org.springframework.web.servlet.DispatcherServlet] (MSC service thread 1-4) FrameworkServlet 'dispatcher': initialization completed in 960 ms
[0m[0m03:23:29,414 INFO [org.wildfly.extension.undertow] (MSC service thread 1-4) JBAS017534: Registered web context: /web
[0m[0m03:23:29,672 INFO [org.jboss.as.server] (management-handler-thread - 1) JBAS018559: Deployed "web.war" (runtime-name : "web.war")
[0m[2015-02-06 03:23:29,708] Artifact web:war: Artifact is deployed successfully
[2015-02-06 03:23:29,708] Artifact web:war: Deploy took 5,743 milliseconds
datanucleus.autoCreateSchema is not a valid property in DataNucleus 4.0 (see the properties doc), as defined by the migration guide from v3.x. Using datanucleus.schema.autoCreateAll would make more sense.