Hello, I try to use the hot reload with tomee maven plugin but I have this
error when the class change is detected, is anybody have an idea ? :
févr. 13, 2017 11:45:34 AM org.apache.openejb.client.EventLogger log
INFO: RemoteInitialContextCreated{providerUri=http://localhost:58080/tomee/ejb}
13-Feb-2017 11:45:34.846 WARNING [http-nio-58080-exec-10]
org.apache.openejb.server.ejbd.EjbDaemon.service "null OEJP/4.6" FAIL "Security
error - [Ljava.net.URI; is not whitelisted as deserialisable, prevented before
loading it, customize tomee.serialization.class.blacklist and
tomee.serialization.class.whitelist to add it to not fail there.
-Dtomee.serialization.class.blacklist=-
-Dtomee.serialization.class.whitelist=[Ljava.net.URI; for instance (or in
conf/system.properties)." - Debug for StackTrace
févr. 13, 2017 11:45:34 AM org.apache.openejb.client.EventLogger log
WARNING: RequestFailed{server=http://localhost:58080/tomee/ejb}
JNDI_LOOKUP:/openejb/DeployerBusinessRemote {error=Prematurely reached the end
of the stream. OEJP/4.6 : Unable to read protocol version. Reached the end of
the stream.}
Exception in thread "tomee-maven-plugin-synchronizer"
org.apache.openejb.OpenEJBRuntimeException: Can't lookup Deployer
at
org.apache.openejb.maven.plugin.UpdatableTomEEMojo.deployer(UpdatableTomEEMojo.java:368)
at
org.apache.openejb.maven.plugin.UpdatableTomEEMojo.reload(UpdatableTomEEMojo.java:227)
at
org.apache.openejb.maven.plugin.UpdatableTomEEMojo$SynchronizerRedeployer.run(UpdatableTomEEMojo.java:254)
at java.util.TimerThread.mainLoop(Timer.java:555)
at java.util.TimerThread.run(Timer.java:505)
Caused by: javax.naming.NamingException: Cannot lookup
'/openejb/DeployerBusinessRemote'. [Root exception is java.rmi.RemoteException:
Cannot read the response from the server (OEJP/4.6) : Prematurely reached the
end of the stream. OEJP/4.6 : Unable to read protocol version. Reached the
end of the stream.; nested exception is:
java.io.IOException: Prematurely reached the end of the stream.
OEJP/4.6 : Unable to read protocol version. Reached the end of the stream.]
at
org.apache.openejb.client.JNDIContext.lookup(JNDIContext.java:405)
at javax.naming.InitialContext.lookup(InitialContext.java:417)
at
org.apache.openejb.maven.plugin.UpdatableTomEEMojo.deployer(UpdatableTomEEMojo.java:366)
... 4 more
Caused by: java.rmi.RemoteException: Cannot read the response from the server
(OEJP/4.6) : Prematurely reached the end of the stream. OEJP/4.6 : Unable to
read protocol version. Reached the end of the stream.; nested exception is:
java.io.IOException: Prematurely reached the end of the stream.
OEJP/4.6 : Unable to read protocol version. Reached the end of the stream.
at
org.apache.openejb.client.Client.processRequest(Client.java:391)
at org.apache.openejb.client.Client.request(Client.java:139)
at
org.apache.openejb.client.JNDIContext.request(JNDIContext.java:211)
at
org.apache.openejb.client.JNDIContext.lookup(JNDIContext.java:399)
... 6 more
Caused by: java.io.IOException: Prematurely reached the end of the stream.
OEJP/4.6 : Unable to read protocol version. Reached the end of the stream.
at
org.apache.openejb.client.Exceptions.newIOException(Exceptions.java:44)
at
org.apache.openejb.client.Client.processRequest(Client.java:276)
... 9 more
Caused by: java.io.EOFException: Unable to read protocol version. Reached the
end of the stream.
at
org.apache.openejb.client.ProtocolMetaData.readExternal(ProtocolMetaData.java:103)
at
org.apache.openejb.client.Client.processRequest(Client.java:272)
... 9 more
And my configuration in pom is :
<plugin>
<groupId>org.apache.tomee.maven</groupId>
<artifactId>tomee-maven-plugin</artifactId>
<version>${tomee.version}</version>
<configuration>
<tomeeVersion>${tomee.version}</tomeeVersion>
<tomeeClassifier>plume</tomeeClassifier>
<debug>false</debug>
<debugPort>5005</debugPort>
<context>xxx</context>
<tomeeHttpPort>58080</tomeeHttpPort>
<synchronization>
<extensions>
<extension>.class</extension>
</extensions>
</synchronization>
<reloadOnUpdate>true</reloadOnUpdate>
<forceReloadable>true</forceReloadable>
<systemVariables>
<!-- Common properties -->
<openejb.servicemanager.enabled>true</openejb.servicemanager.enabled>
<openejb.profile.custom>false</openejb.profile.custom>
<openejb.deploymentId.format>{appId}/{ejbJarId}/{ejbName}</openejb.deploymentId.format>
<openejb.jndiname.format>{deploymentId}{interfaceType.annotationName}</openejb.jndiname.format>
</systemVariables>
</configuration>
</plugin>
This message and any attachments (the "message") is
intended solely for the intended addressees and is confidential.
If you receive this message in error,or are not the intended recipient(s),
please delete it and any copies from your systems and immediately notify
the sender. Any unauthorized view, use that does not comply with its purpose,
dissemination or disclosure, either whole or partial, is prohibited. Since the
internet
cannot guarantee the integrity of this message which may not be reliable, BNP
PARIBAS
(and its subsidiaries) shall not be liable for the message if modified, changed
or falsified.
Do not print this message unless it is necessary,consider the environment.
----------------------------------------------------------------------------------------------------------------------------------
Ce message et toutes les pieces jointes (ci-apres le "message")
sont etablis a l'intention exclusive de ses destinataires et sont confidentiels.
Si vous recevez ce message par erreur ou s'il ne vous est pas destine,
merci de le detruire ainsi que toute copie de votre systeme et d'en avertir
immediatement l'expediteur. Toute lecture non autorisee, toute utilisation de
ce message qui n'est pas conforme a sa destination, toute diffusion ou toute
publication, totale ou partielle, est interdite. L'Internet ne permettant pas
d'assurer
l'integrite de ce message electronique susceptible d'alteration, BNP Paribas
(et ses filiales) decline(nt) toute responsabilite au titre de ce message dans
l'hypothese
ou il aurait ete modifie, deforme ou falsifie.
N'imprimez ce message que si necessaire, pensez a l'environnement.