2015-12-16 4 views
0

Здравствуйте, у меня есть клиент WebService в моем проекте java, который находится в веб-журнале. Теперь мне нужно добавить заголовок по соображениям безопасности в мое ходатайство. Я пробовал все, и, наконец, друг помог мне с кодом для Jboss, который отлично работает на Jboss, но в weblogic это вызывает у меня проблему с castClassException.WebLogic ClientInstanceInvocationHandler to cxf ClientProxy

Как название говорит оригинальный класс «ClientInstanceInvocationHandler», и мне нужно, что «ClientProxy» Апач CXF

Вот проблема:

org.apache.cxf.endpoint.Client client = ClientProxy.getClient(port); 

Кто-нибудь есть решение?

ответ

1

В соответствии с этим сайтом https://community.oracle.com/thread/2467175?tstart=0 проблема заключается в том, что классы Apache не относятся должным образом к пути к классам сервера.

Они сказали, что они «устанавливают банки APACHE CXF в качестве библиотеки, определяемой пользователем, и устанавливают ее в параметр« Развернутый по умолчанию »».

В этом blog с той же проблемой, что они используют следующий фрагмент в их WebLogic-application.xml:

<prefer-application-resources> 
    <resource-name>META-INF/services/javax.xml.ws.spi.Provider</resource-name> 
</prefer-application-resources> 

Из того, что я могу понять, WebLogic возвращает это собственные реализации для этих методов, если вы не скажете ему предпочитают стандартный интерфейс и помещают реализацию стандартного интерфейса в путь к классам. Я предполагаю, что пользовательский класс дает дополнительную производительность или функции, выходящие за пределы стандартного интерфейса.

Апач CXF site сам решает эту проблему подобным образом, но предполагает другое название пакета (javax.jws. *)

В дополнение ко всему этому, некоторые люди имели проблемы с получением WebLogic, чтобы найти и распознать банки, потому что загружали классы WebLogic в предпочтении и должны были сделать следующее:

<container-descriptor> 
    <prefer-web-inf-classes>true</prefer-web-inf-classes> 
</container-descriptor> 

Но я видел вариации на это, в зависимости от того, где ваших банков Apache расположены.

+0

Это создает некоторые другие проблемы, потому что не найти ресурс .... – fjbatresv

Смежные вопросы