2015-06-16 1 views
0

Меня попросили «обновить» кодовую базу от Websphere 7 до Websphere 8.5.5.Альтернатива Apache Wink JSONObject/JSONException

Там есть ссылка в коде на эти объекты:

import org.apache.wink.json4j.JSONObject 
import org.apache.wink.json4j.JSONException 

управления контентом в настоящее время используется Apache Wink 1.1.3 и таким образом решить, что оператор импорта. Однако, похоже, внедрение IBM Wink основано на 1.1.1 (это правда?), И из-за этого я больше не могу использовать JSONObject или JSONException выше. Я по существу попросил «понизить» версию Apache Wink, так что кажется. (И нет, я не могу просто включить новую банку Wink в свой классный путь.)

Мой вопрос: что было предыдущим эквивалентом исключения JSONObject/JSON, которое теперь находится в Apache Wink 1.1.3? Мне нужно найти что-то, что можно использовать вместо них.

Спасибо!

ответ

2

К сожалению, Websphere 8.5.5 поставляет версию Apache Wink 1.1.1. У меня возникли проблемы, когда я переключился с WAS 7 на WAS 8.5.X. Возможны следующие варианты с вами:

  1. Если вы не хотите, чтобы изменить какой-либо код, то вы можете добавить свое подмигивание банку в качестве ссылки в совместно используемых библиотек в вашем развернутом приложении и он должен работать нормально.
  2. Вместо того, чтобы создавать данные JSON с использованием JSONObject, просто поставьте @Produces(MediaType.APPLICATION_JSON) @Consumes(MediaType.APPLICATION_JSON) на свой метод и верните значение bean. Я предполагаю, что ваш бин ценности, клиент, который использует услугу, использует те же ключи.
+0

Спасибо, Prerak. К сожалению, я не могу ссылаться на него как на разделяемую библиотеку по другим причинам. Это также не относится к классу ресурсов, поэтому эти аннотации не будут действительно решать проблему. В конце концов, я думаю, что мне придется пойти с внедрением GSON или Jackson вместо json-объекта. – risingTide