I currently maintain a legacy EJB application that is hosted on WebLogic 12c, where it operates smoothly without any issues. Recently, I undertook the task of migrating this application to WebLogic 14c, and while the migration was successful and the application began functioning properly, I observed a peculiar anomaly. Within the application, there exist several REST APIs whose request bodies comprise JSON objects with UpperCamelCase naming conventions. For instance, the JSON structure may appear as follows: { “UserId” : “XXX”, “Name” : “XXX” ,…}. However, the corresponding objects intended for binding within the application utilize LowerCamelCase naming conventions. To ensure proper data mapping, each field in these objects is annotated with @XmlElement, as illustrated below:
public class User {
@XmlElement(name = "UserId")
String userId;
@XmlElement(name = "Name")
String name;
…
}
It is peculiar that upon calling the REST API with a request body structured as described on Weblogic 14c, I receive null values for every field utilizing the UpperCamelCase strategy. Conversely, when I employ lowerCamelCase in the request body, the API functions correctly. I am hesitant to modify the API requests, as they have been functioning seamlessly thus far. How can I address this issue on WebLogic 14c? What changes in WebLogic 14c have led to this problem post-migration from WebLogic 12c? Additionally, which dependencies, such as Jaxb or Jersey, should I consider reconfiguring on the server library?
In my legacy application, I currently rely on the following dependencies: Com.sun.jersey:Jersey-bundle-1.19.4, Javax:javaee-api-6.0, Com.fasterxml.jackson.core:Jackson-annotation:2.9