[
https://issues.apache.org/jira/browse/AXIS2-2626?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12506159
]
Thilina Gunarathne commented on AXIS2-2626:
-------------------------------------------
Once again I added the above mentioned work around... Please make sure to fix
this properly before removing the workaround....
Steps to regenerate...
*Comment the hack I've put...
1. Enable "hotupdate" in axis2.xml
2. Add a custom deployer
3. Deploy a service using the custom deployer...
4. Do some change to the service while it's running...
You will get the following exception..
ERROR [2007-06-19 15:41:11,521] The echo.js service, which is not valid,
caused Two services cannot have same name. A service with the echo name
already exists in the system.
org.apache.axis2.AxisFault: Two services cannot have same name. A service with
the echo name already exists in the system.
at
org.apache.axis2.engine.AxisConfiguration.addServiceGroup(AxisConfiguration.java:274)
at
org.apache.axis2.deployment.DeploymentEngine.addServiceGroup(DeploymentEngine.java:442)
line 611-623 in the DeploymentEngine...
if (wsInfo.getType() == WSInfo.TYPE_SERVICE) {
if (isHotUpdate()) {
serviceDeployer.unDeploy(wsInfo.getFileName());
} else {
axisConfig.removeFaultyService(wsInfo.getFileName());
}
} else {
if (isHotUpdate()) {
Deployer deployer = wsInfo.getDeployer();
if (deployer != null) {
deployer.unDeploy(wsInfo.getFileName());
}
}
}
Currently all the services deployed using the custom deployers were assigned
the type as WSInfo.TYPE_SERVICE.. then Axis2 tries to undeploy that service
using the serviceDeployer, which is incorrect...
> HotUpdate fails on custom deployers
> -----------------------------------
>
> Key: AXIS2-2626
> URL: https://issues.apache.org/jira/browse/AXIS2-2626
> Project: Axis 2.0 (Axis2)
> Issue Type: Bug
> Reporter: Thilina Gunarathne
> Assignee: Deepal Jayasinghe
> Priority: Blocker
>
> >+ public static final int TYPE_SERVICE = 0;
> >+ public static final int TYPE_MODULE = 1;
> >+
> > /**
> > * To check whether the file is a module or a servise
> > */
> >+ private int type = TYPE_SERVICE;
> Above make the hot deploy logic to treat all the deployed services as .aar or
> equivalent (TYPE_SERVICE).. Hot update on custom deployers fails to undeploy
> service before deploying again, which gives rise to an Exception.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]