2017-01-10 15 views
0

У нас есть EAR, который содержит WAR и два MDBS. WAR содержит ряд JAX-WS WebServices аннотацию, напримерРазвертывание консоли администратора WebSphere 8.5 и развертывание AdminApp (JAX-WS не инициализируется)

@WebService(name = "QuoteService", targetNamespace = "http://quotation.my.place.com") 
@SOAPBinding(style = SOAPBinding.Style.RPC) 
public interface QuoteService { 
: 
} 

Наш web.xml является веб-приложение версии 2.5

Когда я развернуть приложение через (диалог файла консоли администратора выберите ухо , пройдите 4 шага) ухо развернется отлично. Все веб-сервисы подхватываются через сканирование класса аннотации, которое я предполагаю, и доступны на локальном хосте: 9080/MyProj/QuoteService

Однако, когда я копирую команду административного скриптинга, предоставленную Command Assistance, и пытаюсь реплицировать с помощью скрипта, используя объект janton AdminApp, ухо разворачивается, как и MDB, однако веб-службы JAX-WS никогда не инициализируются?

Я приложил предоставленную команду. Я заметил, что флаг -nodeployws присутствует, однако, когда я пытаюсь использовать -deployws, у меня нет успеха. Есть ли что-то еще, что запускает JAX-WS WebServices при развертывании через консоль?

AdminApp.install(workspace+"/"+earfile, 
'[ -nodeployws -nopreCompileJSPs -distributeApp -nouseMetaDataFromBinary 
    -nodeployejb -appname ' + appname + ' -createMBeansForResources 
    -noreloadEnabled -nodeployws -validateinstall warn 
    -noprocessEmbeddedConfig 
    -filepermission .*\.dll=755#.*\.so=755#.*\.a=755#.*\.sl=755 
    -noallowDispatchRemoteInclude -noallowServiceRemoteInclude -asyncRequestDispatchType DISABLED 
    -nouseAutoLink -noenableClientModule -clientMode isolated -novalidateSchema 
    -MapModulesToServers 
[ 
    [ MyFirstListener-EJB MyProj-MyFirstList-EJB-3.0B.jar,META-INF/ejb-jar.xml 
     WebSphere:cell=' +cell+ ',node=' +node+ ',server=' +server+ ' ] 
    [ MySecondListener-EJB MyProj-MySecondList-EJB-3.0B.jar,META-INF/ejb-jar.xml 
     WebSphere:cell=' +cell+ ',node=' +node+ ',server=' +server+ ' ] 
    [ MyProj-Client-3.0B.war MyProj-Client-3.0B.war,WEB-INF/web.xml 
     WebSphere:cell=' +cell+ ',node=' +node+ ',server=' +server+ ' ] 
] -MetadataCompleteForModules 
[ 
    [ MyFirstListener-EJB MyProj-MyFirstList-EJB-3.0B.jar,META-INF/ejb-jar.xml true ] 
    [ MySecondListener-EJB MyProj-MySecondList-EJB-3.0B.jar,META-INF/ejb-jar.xml true ] 
    [ MyProj-Client-3.0B.war MyProj-Client-3.0B.war,WEB-INF/web.xml true ] 
] 
]') 

ответ

1

Для тех, кто еще борется с этим, решение было с опцией на -MetadataCompleteForModules. Для линии

MyProj-Client-3.0B.war MyProj-Client-3.0B.war,WEB-INF/web.xml true 

я должен был изменить значение от истинного на ложное как MetadataCompleteForModules указывает менеджеру развертывания НЕ сканировать артефакт для аннотаций, которые он считает метаданные полного модуля.

Надеюсь, что это поможет кому-то в будущем.

Thanks, Mark.