[jboss-jira] [JBoss JIRA] (WFLY-11997) A singleton can not add a init-method via ejb-jar.xml descriptor because it fail with Parser Exception

Wolf-Dieter Fink (Jira) issues at jboss.org
Tue Apr 16 09:33:00 EDT 2019


Wolf-Dieter Fink created WFLY-11997:
---------------------------------------

             Summary: A singleton can not add a init-method via ejb-jar.xml descriptor because it fail with Parser Exception
                 Key: WFLY-11997
                 URL: https://issues.jboss.org/browse/WFLY-11997
             Project: WildFly
          Issue Type: Bug
          Components: EJB
    Affects Versions: 17.0.0.Beta1
            Reporter: Wolf-Dieter Fink
            Assignee: Cheng Fang


If a Singelton EJB should be created without annotation and use ejb-jar.xml to declare it this will work for mostly all but not for init-method element.

The class is a POJO without annotations, the ejb-jar.xml looks like followed
------
<ejb-jar xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/ejb-jar_3_2.xsd" version="3.2">
  <enterprise-beans>
    <session>
      <ejb-name>StartupSingletonBean</ejb-name>
      <display-name>JBossInit</display-name>
      <description>JBoss startup class</description>
      <ejb-class>org.jboss.wfink.ejb31.singleton.StartupSingletonBean</ejb-class>
      <session-type>Singleton</session-type>
      <init-on-startup>true</init-on-startup>
      <init-method>test23</init-method>
                                         --- > this is where the Exception row/col point to
      <env-entry>
        <description>an example for a environment value</description>
        <env-entry-name>myString</env-entry-name>
        <env-entry-type>java.lang.String</env-entry-type>
        <env-entry-value>MyString from the ejb-jar.xml :)</env-entry-value>
      </env-entry>
    </session>
  </enterprise-beans>
   .....
--------

The Exception is this:
15:27:29,450 ERROR [org.jboss.msc.service.fail] (MSC service thread 1-3) MSC000001: Failed to start service jboss.deployment.subunit."simpleEJB31.ear"."ejb.jar".PARSE: org.jboss.msc.service.StartException in service jboss.deployment.subunit."simpleEJB31.ear"."ejb.jar".PARSE: WFLYSRV0153: Failed to process phase PARSE of subdeployment "ejb.jar" of deployment "simpleEJB31.ear"
	at org.jboss.as.server.deployment.DeploymentUnitPhaseService.start(DeploymentUnitPhaseService.java:183)
	at org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(ServiceControllerImpl.java:1738)
	at org.jboss.msc.service.ServiceControllerImpl$StartTask.execute(ServiceControllerImpl.java:1700)
	at org.jboss.msc.service.ServiceControllerImpl$ControllerTask.run(ServiceControllerImpl.java:1558)
	at org.jboss.threads.ContextClassLoaderSavingRunnable.run(ContextClassLoaderSavingRunnable.java:35)
	at org.jboss.threads.EnhancedQueueExecutor.safeRun(EnhancedQueueExecutor.java:1982)
	at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.doRunTask(EnhancedQueueExecutor.java:1486)
	at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1377)
	at java.lang.Thread.run(Thread.java:748)
Caused by: org.jboss.as.server.deployment.DeploymentUnitProcessingException: WFLYEJB0085: Exception while parsing ejb-jar.xml: /content/simpleEJB31.ear/ejb.jar/META-INF/ejb-jar.xml
	at org.jboss.as.ejb3.deployment.processors.EjbJarParsingDeploymentUnitProcessor.parseEjbJarXml(EjbJarParsingDeploymentUnitProcessor.java:275)
	at org.jboss.as.ejb3.deployment.processors.EjbJarParsingDeploymentUnitProcessor.deploy(EjbJarParsingDeploymentUnitProcessor.java:126)
	at org.jboss.as.server.deployment.DeploymentUnitPhaseService.start(DeploymentUnitPhaseService.java:176)
	... 8 more
Caused by: com.ctc.wstx.exc.WstxParsingException: Received non-all-whitespace CHARACTERS or CDATA event in nextTag().
 at [row,col {unknown-source}]: [18,25]
	at com.ctc.wstx.sr.StreamScanner.constructWfcException(StreamScanner.java:621)
	at com.ctc.wstx.sr.StreamScanner.throwParseError(StreamScanner.java:491)
	at com.ctc.wstx.sr.StreamScanner.throwParseError(StreamScanner.java:475)
	at com.ctc.wstx.sr.BasicStreamReader.nextTag(BasicStreamReader.java:1224)
	at org.jboss.metadata.ejb.parser.spec.AbstractMetaDataParser.processElements(AbstractMetaDataParser.java:64)
	at org.jboss.metadata.ejb.parser.spec.InitMethodMetaDataParser.parse(InitMethodMetaDataParser.java:55)
	at org.jboss.metadata.ejb.parser.spec.SessionBean30MetaDataParser.processElement(SessionBean30MetaDataParser.java:104)
	at org.jboss.metadata.ejb.parser.spec.SessionBean31MetaDataParser.processElement(SessionBean31MetaDataParser.java:143)
	at org.jboss.metadata.ejb.parser.spec.SessionBean32MetaDataParser.processElement(SessionBean32MetaDataParser.java:54)
	at org.jboss.metadata.ejb.parser.spec.SessionBean32MetaDataParser.processElement(SessionBean32MetaDataParser.java:36)
	at org.jboss.metadata.ejb.parser.spec.AbstractMetaDataParser.processElements(AbstractMetaDataParser.java:65)
	at org.jboss.metadata.ejb.parser.spec.SessionBeanMetaDataParser.parse(SessionBeanMetaDataParser.java:81)
	at org.jboss.metadata.ejb.parser.spec.EnterpriseBeansMetaDataParser.processElement(EnterpriseBeansMetaDataParser.java:87)
	at org.jboss.metadata.ejb.parser.spec.EnterpriseBeansMetaDataParser.processElement(EnterpriseBeansMetaDataParser.java:39)
	at org.jboss.metadata.ejb.parser.spec.AbstractMetaDataParser.processElements(AbstractMetaDataParser.java:65)
	at org.jboss.metadata.ejb.parser.spec.EnterpriseBeansMetaDataParser.parse(EnterpriseBeansMetaDataParser.java:72)
	at org.jboss.metadata.ejb.parser.spec.EnterpriseBeansMetaDataParser.parse(EnterpriseBeansMetaDataParser.java:65)
	at org.jboss.metadata.ejb.parser.spec.AbstractEjbJarMetaDataParser.processElement(AbstractEjbJarMetaDataParser.java:98)
	at org.jboss.metadata.ejb.parser.spec.AbstractEjbJarMetaDataParser.processElement(AbstractEjbJarMetaDataParser.java:43)
	at org.jboss.metadata.ejb.parser.spec.AbstractMetaDataParser.processElements(AbstractMetaDataParser.java:65)
	at org.jboss.metadata.ejb.parser.spec.EjbJarMetaDataParser.parseDocument(EjbJarMetaDataParser.java:101)
	at org.jboss.metadata.ejb.parser.spec.EjbJarMetaDataParser.parse(EjbJarMetaDataParser.java:51)
	at org.jboss.as.ejb3.deployment.processors.EjbJarParsingDeploymentUnitProcessor.parseEjbJarXml(EjbJarParsingDeploymentUnitProcessor.java:272)
	... 10 more




--
This message was sent by Atlassian Jira
(v7.12.1#712002)


More information about the jboss-jira mailing list