Description
Created a sample VDB in designer, for which the model is to use the loopback connector. Did not specify a JNDI reference, because it doesn't need one. However, the VDB can't be deployed from Designer because there's no connection info for this model. So I hand deployed, but the server doesn't like it that there's no JNDI specified (if I add the JNDI reference, it deploys fine). You get this error:
08:10:17,265 ERROR [org.jboss.msc.service.fail] (MSC service thread 1-8) MSC000001: Failed to start service jboss.deployment.unit."Sample.vdb".INSTALL: org.jboss.msc.service.StartException in service jboss.deployment.unit."Sample.vdb".INSTALL: JBAS018733: Failed to process phase INSTALL of deployment "Sample.vdb"
at org.jboss.as.server.deployment.DeploymentUnitPhaseService.start(DeploymentUnitPhaseService.java:127) [jboss-as-server-7.2.0.Final-redhat-8.jar:7.2.0.Final-redhat-8]
at org.jboss.msc.service.ServiceControllerImpl$StartTask.startService(ServiceControllerImpl.java:1811) [jboss-msc-1.0.4.GA-redhat-1.jar:1.0.4.GA-redhat-1]
at org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1746) [jboss-msc-1.0.4.GA-redhat-1.jar:1.0.4.GA-redhat-1]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) [rt.jar:1.7.0_13]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) [rt.jar:1.7.0_13]
at java.lang.Thread.run(Thread.java:722) [rt.jar:1.7.0_13]
Caused by: java.lang.IllegalArgumentException: Empty name segment is not allowed for java
at org.jboss.msc.service.ServiceName.of(ServiceName.java:85) [jboss-msc-1.0.4.GA-redhat-1.jar:1.0.4.GA-redhat-1]
at org.jboss.msc.service.ServiceName.append(ServiceName.java:112) [jboss-msc-1.0.4.GA-redhat-1.jar:1.0.4.GA-redhat-1]
at org.jboss.as.naming.deployment.ContextNames.buildServiceName(ContextNames.java:183)
at org.jboss.as.naming.deployment.ContextNames$BindInfo.<init>(ContextNames.java:195)
at org.jboss.as.naming.deployment.ContextNames$BindInfo.<init>(ContextNames.java:186)
at org.jboss.as.naming.deployment.ContextNames.bindInfoFor(ContextNames.java:300)
at org.teiid.jboss.VDBDeployer.addDataSourceListener(VDBDeployer.java:245)
at org.teiid.jboss.VDBDeployer.dataSourceDependencies(VDBDeployer.java:267)
at org.teiid.jboss.VDBDeployer.deploy(VDBDeployer.java:153)
at org.jboss.as.server.deployment.DeploymentUnitPhaseService.start(DeploymentUnitPhaseService.java:120) [jboss-as-server-7.2.0.Final-redhat-8.jar:7.2.0.Final-redhat-8]
... 5 more
Can Teiid preempt this and produce a clearer message that its because there's no JNDI specified?