I am using WebLogic 12.1.2. (It seems to be a WebLogic issue because the same code works fine under JBoss)
I have an EJB with overloading methods. If I assign both method with same RESTful path, the deployment on WebLogic will appear to be success but fail when I access the EJB method with this message:
Root cause of ServletException.
com.sun.jersey.spi.inject.Errors$ErrorMessagesException
at com.sun.jersey.spi.inject.Errors.processErrorMessages(Errors.java:170)
at com.sun.jersey.spi.inject.Errors.postProcess(Errors.java:136)
at com.sun.jersey.spi.inject.Errors.processWithErrors(Errors.java:199)
at com.sun.jersey.server.impl.application.WebApplicationImpl.initiate(WebApplicationImpl.java:770)
at com.sun.jersey.server.impl.application.WebApplicationImpl.initiate(WebApplicationImpl.java:765)
Here is my EJB code:
@Stateless
@LocalBean
@TransactionManagement(TransactionManagementType.BEAN)
@Path("/License")
public class License implements LicenseRemote, LicenseLocal {
public License() {
}
@POST
@Path("/registerTerminal")
@Produces("application/json")
public ResultRecord registerTerminal(
@QueryParam("machineName") String machineName,
@QueryParam("computerName") String computerName,
@QueryParam("terminalId") String terminalId) {
..............
...............
...............
}
@POST
@Path("/registerTerminal")
@Produces("application/json")
public TerminalInfo registerTerminal(
@QueryParam("terminalId") String terminalId) {
..............
...............
...............
}
If I change one of the Path annotation to different value, then everything works fine.
Thanks in advance for any help!