Mam problem z dwiema aplikacjami, z których korzystamy w mojej firmie. CRM o nazwie Infonova i aplikacją mobilną.
Dwie aplikacje mają własne API, jedna udziela odpowiedzi w formacie xml, a druga w Json.
Rozwiązaniem, które zamierzam wdrożyć, jestutwórz aplikację, która będzie interfejsem API fasady (brama). Ta aplikacja wywoła interfejs API adresu URL pierwszej aplikacji i otrzyma odpowiedź xml, a ja myślę o zamapowaniu tego rozwiązania na format json i zwrócę go.
Ponieważ atrybuty między xml i json nie są takie same, chcę wiedzieć, czy istnieje rozwiązanie do mapowania dwóch encji, które będą reprezentować moje odpowiedzi.
Z góry dziękuję,
Odpowiedzi:
1 dla odpowiedzi № 1Możesz zdefiniować XML unmarshaller wiosną zadzwoń do usługi, która zwraca xml, niemiarsą odpowiedź na tę fasolę. A potem możesz zwrócić tę fasolę w odpowiedzi od kontrolera z adnotacją @Produces("application/json")
.
Podsumowując. Masz kontroler, który produkuje json, fasolę zawierającą nazwy pól, które chcesz w swoim jsonie, oraz niestandardowy program do usuwania wypełnienia tych pól dla xml (niestandardowy, ponieważ nazwy pól między json a xml nie pasują).