Мы сталкиваемся с странной ситуацией с приложением websphere.Ошибка при развертывании EAR, содержащего EJB и EJBClient, в websphere
Мы разработали это приложение в Eclipse Juno с сервером websphere 8.5. Это приложение JSF 2.0. Он также имеет EJBTimer. При локальном тестировании этого приложения он отлично работает с страницами JSF, и EJBTimer также работает так, как ожидалось.
- Когда мы построили приложение, используя наш регулярный процесс сборки - извлечения кода из ClearCase и ДИНАМИКУ муравой сборки, приложения развертывается, но жалуется на методе не найден в локального интерфейса EJB. Когда мы проверяем построенный EAR, в интерфейсе есть метод .
Когда мы попытались экспортировать это как Export -> EAR и развернули этот EAR на нашем сервере разработки, мы получим следующую ошибку. Rememebr, тот же код работает в локальной среде Windows. Мы также проверили версию компилятора всех проектов - web, ejb, ejbclient и - все они являются Java 1.7. Где еще нам нужно смотреть?
[*Error] ejbModule/com/abc/appname/service/ProcessDailyFeed.java(54): Multi-catch parameters are not allowed for source level below 1.7 [*Error] ejbModule/com/abc/appname/scheduledBean/ScheduledBean.java(68): Multi-catch parameters are not allowed for source level below 1.7
UPDATE:
Выход из ошибочного Deploy
=== wasd8100Cell:Deploy Failed ===
=== Check http://serverabc:12345/Deployment_EAR_log for detail ===
Submitted By: b3601
------ Deploying Application -----------
Ear File: myApp_dev_1.ear
App Name: myApp
Install Type: UPDATE
Target: ('srv01_cluster', '')
Target Http: ('https-web01', 'wasd8101')('https-web01', '')('https-web01', 'wasd8104')
Modified Target Http: ('https-web01', 'wasd8101')('https-web01', 'wasd8104')
Copy ear file from nfs to local filesystem /opt/local/software/abcnstalledApps/tmp/myApp_dev_1.ear - 1.0s
Virtual Host: default_host
(Module, URI): ('MyAppEJB', 'MyAppEJB.jar,META-INF/ejb-jar.xml')('MyAppWeb', 'MyAppWeb.war,WEB-INF/web.xml')
Bean: OracleDatabaseAccess
Bean: JPAReasonManager
Bean: JpaHistoryManager
Bean: JpaHistoryManager
Bean: ProcessDailyFeed
Bean: AccessExternal
Bean: MyAppService
Bean: ScheduledUpdateDatabase
Bean: ScheduledBean
Bean: StartUp
Bean: OracleDatabaseAccess
Bean: JPAReasonManager
Bean: JpaHistoryManager
Bean: ProcessDailyFeed
Bean: AccessExternal
Bean: MyAppService
Bean: ScheduledUpdateDatabase
Bean: ScheduledBean
Bean: StartUp
EJBDeploy = true
Run ejbdeploy.sh : /opt/local/software/websphere/v8/bin/ejbdeploy.sh -cp /ora01/oracle/product/was8/jdbc/lib/ojdbc6.jar /opt/local/software/abcnstalledApps/tmp/myApp_dev_1.ear /opt/local/software/abcnstalledApps/tmp /opt/local/software/abcnstalledApps/tmp/myApp_dev_1.ear_ejb.ear -quiet > /opt/local/software/abcnstalledApps/tmp/myApp.out
using JVM heap -Xms1024m -Xmx2048m
EJB Deploy configuration directory: /opt/local/software/websphere/v8/profiles/dmgr01/ejbdeploy/configuration/
framework search path: /opt/local/software/websphere/v8/deploytool/itp/plugins
build:RAD851-I20121103_1921
[*Error] ejbModule/com/abc/productivity/service/ProcessDailyFeed.java(54): Multi-catch parameters are not allowed for source level below 1.7
[*Error] ejbModule/com/abc/productivity/scheduledBean/ScheduledBean.java(68): Multi-catch parameters are not allowed for source level below 1.7
[*Warning] ejbModule/com/abc/productivity/scheduledBean/ScheduledBean.java(80): Type safety: Unchecked cast from List to List<ProgramProductivityHistory>
[*Warning] ejbModule/com/abc/productivity/scheduledBean/ScheduledBean.java(167): Type safety: Unchecked cast from List to List<ProgramProductivityHistory>
[*Warning] ejbModule/com/abc/productivity/dao/JpaHistoryManager.java(67): Type safety: Unchecked cast from List to List<ProgramProductivityHistory>
[*Warning] ejbModule/com/abc/productivity/dao/JpaHistoryManager.java(110): Type safety: Unchecked cast from List to List<Long>
[*Warning] ejbModule/com/abc/productivity/dao/JpaHistoryManager.java(121): Type safety: Unchecked cast from List to List<ProgramProductivity>
[*Warning] ejbModule/com/abc/productivity/dao/JpaHistoryManager.java(160): Type safety: Unchecked cast from List to List<ProgramProductivityHistory>
[*Warning] ejbModule/com/abc/productivity/dao/JpaHistoryManager.java(217): Type safety: Unchecked cast from List to List<ProgramProductivityHistory>
[*Warning] ejbModule/com/abc/productivity/dao/JpaHistoryManager.java(267): Type safety: Unchecked cast from List to List<ProgramProductivityHistory>
[*Warning] ejbModule/com/abc/productivity/dao/JpaHistoryManager.java(292): Type safety: Unchecked cast from List to List<ProgramProductivityHistory>
[*Warning] ejbModule/com/abc/productivity/dao/JpaHistoryManager.java(314): Type safety: Unchecked cast from List to List<String>
[*Warning] ejbModule/com/abc/productivity/dao/JpaHistoryManager.java(348): Type safety: Unchecked cast from List to List<ProgramProductivityHistory>
[*Warning] ejbModule/com/abc/productivity/dao/JpaHistoryManager.java(372): Type safety: Unchecked cast from List to List<ProgramProductivity>
[*Warning] ejbModule/com/abc/productivity/dao/JpaHistoryManager.java(375): Type safety: Unchecked cast from List to List<ProgramProductivityHistory>
[*Warning] ejbModule/com/abc/productivity/dao/JpaHistoryManager.java(408): Type safety: Unchecked cast from List to List<ProgramProductivityHistory>
[*Warning] ejbModule/com/abc/productivity/dao/JPAReasonManager.java(97): Type safety: Unchecked cast from List to List<String>
[*Warning] ejbModule/com/abc/productivity/dao/JPAReasonManager.java(207): Type safety: Unchecked cast from List to List<EmergencyReason>
Execution Halted: Compilation Errors Reported
2 Errors, 16 Warnings, 0 Informational Messages
Deploy EJB ear file from /opt/local/software/abcnstalledApps/tmp/myApp_dev_1.ear_ejb.ear
*** Invoke AdminApp Install *** 2015-02-20 07:25:00
AdminApp.install (/opt/local/software/abcnstalledApps/tmp/myApp_dev_1.ear_ejb.ear,[ -appname myApp -installed.ear.destination /opt/local/software/abcnstalledApps/myApp -MapModulesToServers [["MyAppEJB" MyAppEJB.jar,META-INF/ejb-jar.xml WebSphere:cell=wasd8100Cell,cluster=srv01_cluster]["MyAppWeb" MyAppWeb.war,WEB-INF/web.xml WebSphere:cell=wasd8100Cell,cluster=srv01_cluster+WebSphere:cell=wasd8100Cell,node=wasd8101,server=https-web01+WebSphere:cell=wasd8100Cell,node=wasd8104,server=https-web01]] -MapWebModToVH [["MyAppWeb" MyAppWeb.war,WEB-INF/web.xml default_host]] -update -usedefaultbindings -defaultbinding.ejbjndi.prefix ejb -defaultbinding.virtual.host default_host -nopreCompileJSPs -distributeApp -nouseMetaDataFromBinary -createMBeansForResources -noreloadEnabled -nodeployws -validateinstall off -noprocessEmbeddedConfig -nodeployejb -filepermission .*\.dll=755#.*\.so=755#.*\.a=755#.*\.sl=755 -noallowDispatchRemoteInclude -noallowServiceRemoteInclude -asyncRequestDispatchType DISABLED -nouseAutoLink ])
=== deployEntApps with Exception === 2015-02-20 07:25:00
Traceback (most recent call last):
File "/opt/softdepot/abcinst/was8scripts/abcUtils.py", line 2556, in deployEntApps
installResults = AdminApp.install(installableEar,installOptions)
com.ibm.ws.scripting.ScriptingException: com.ibm.ws.scripting.ScriptingException: WASX7115E: Cannot read input file "/opt/local/software/abcnstalledApps/tmp/myApp_dev_1.ear_ejb.ear"
Выхода из хорошего Deploy
=== wasd8100Cell:Deploy Successful ===
Submitted By: b3601
------ Deploying Application -----------
Ear File: myApp_dev_31.ear
App Name: myApp
Install Type: UPDATE
Target: ('srv01_cluster', '')
Target Http: ('https-web01', 'wasd8101')('https-web01', '')('https-web01', 'wasd8104')
Modified Target Http: ('https-web01', 'wasd8101')('https-web01', 'wasd8104')
Copy ear file from nfs to local filesystem /opt/local/software/abcnstalledApps/tmp/myApp_dev_31.ear - 0.0s
Virtual Host: default_host
(Module, URI): ('MyAppEJB', 'MyAppEJB.jar,META-INF/ejb-jar.xml')('MyAppWeb', 'MyAppWeb.war,WEB-INF/web.xml')
Bean: OracleDatabaseAccess
Bean: JPAReasonManager
Bean: JpaHistoryManager
Bean: JpaHistoryManager
Bean: ProcessDailyFeed
Bean: AccessExternal
Bean: MyAppService
Bean: ScheduledUpdateDatabase
Bean: ScheduledBean
Bean: StartUp
Bean: OracleDatabaseAccess
Bean: JPAReasonManager
Bean: JpaHistoryManager
Bean: ProcessDailyFeed
Bean: AccessExternal
Bean: MyAppService
Bean: ScheduledUpdateDatabase
Bean: ScheduledBean
Bean: StartUp
EJBDeploy = true
Run ejbdeploy.sh : /opt/local/software/websphere/v8/bin/ejbdeploy.sh -cp /ora01/oracle/product/was8/jdbc/lib/ojdbc6.jar /opt/local/software/abcnstalledApps/tmp/myApp_dev_31.ear /opt/local/software/abcnstalledApps/tmp /opt/local/software/abcnstalledApps/tmp/myApp_dev_31.ear_ejb.ear -quiet > /opt/local/software/abcnstalledApps/tmp/myApp.out
using JVM heap -Xms1024m -Xmx2048m
EJB Deploy configuration directory: /opt/local/software/websphere/v8/profiles/dmgr01/ejbdeploy/configuration/
framework search path: /opt/local/software/websphere/v8/deploytool/itp/plugins
build:RAD851-I20121103_1921
0 Errors, 0 Warnings, 0 Informational Messages
Deploy EJB ear file from /opt/local/software/abcnstalledApps/tmp/myApp_dev_31.ear_ejb.ear
*** Invoke AdminApp Install *** 2015-02-20 07:28:48
AdminApp.install (/opt/local/software/abcnstalledApps/tmp/myApp_dev_31.ear_ejb.ear,[ -appname myApp -installed.ear.destination /opt/local/software/abcnstalledApps/myApp -MapModulesToServers [["MyAppEJB" MyAppEJB.jar,META-INF/ejb-jar.xml WebSphere:cell=wasd8100Cell,cluster=srv01_cluster]["MyAppWeb" MyAppWeb.war,WEB-INF/web.xml WebSphere:cell=wasd8100Cell,cluster=srv01_cluster+WebSphere:cell=wasd8100Cell,node=wasd8101,server=https-web01+WebSphere:cell=wasd8100Cell,node=wasd8104,server=https-web01]] -MapWebModToVH [["MyAppWeb" MyAppWeb.war,WEB-INF/web.xml default_host]] -update -usedefaultbindings -defaultbinding.ejbjndi.prefix ejb -defaultbinding.virtual.host default_host -nopreCompileJSPs -distributeApp -nouseMetaDataFromBinary -createMBeansForResources -noreloadEnabled -nodeployws -validateinstall off -noprocessEmbeddedConfig -nodeployejb -filepermission .*\.dll=755#.*\.so=755#.*\.a=755#.*\.sl=755 -noallowDispatchRemoteInclude -noallowServiceRemoteInclude -asyncRequestDispatchType DISABLED -nouseAutoLink ])
*** AdminApp Install Complete *** 2015-02-20 07:28:56
Deployed Location : /opt/local/software/abcnstalledApps/myApp/myApp.ear
Class Loader Policy : MULTIPLE (SINGLE=Application,MULTIPLE=Module)
Class Loader Mode : PARENT_FIRST
*** Saving the deployemnt *** 2015-02-20 07:28:56
Old Context Root: myApp
New Context Root: myApp
Same Context root, no need to genPlugin
*** Generate docs cache deployment request **** 2015-02-20 07:29:00
Duration: 44.0s
*** It may take up to 5-10 minutes for the ear file completely written to each node. Please have a nice coffee break:-)
*** Check http://serverabc:12345/Deployment_EAR_log for detail.
Похоже, ваш сервер разработки использует это используя Java 1.6 вместо 1.7. Помните, что по умолчанию WAS 8.5 использует Java 1.6, и вам нужно вручную установить 1.7 и переключить сервер на использование 1.7. – Gas
Конечно, это первое, что приходит на ум, и хотя это вряд ли по следующей причине - мы все еще проверили это и это 1.7. Когда мы делаем сборку с тем же кодом at имеет многопользовательский режим, используя скрипт сборки - buildforge/ANT - и развертывайте его, мы не получаем эту конкретную ошибку. Мы получаем ошибку только при попытке развернуть EAR, экспортированного из проекта Eclipse. Вот почему я подумал: может быть что-то не хватает в настройке проекта в Eclipse, который вступает в игру при создании EAR (он также выполняется локально без проблем), что мы, возможно, пропустили. – adbdkb
Когда именно вы получаете эти ошибки (во время экспорта, установки, запуска, первого запроса)? Поскольку это не похоже на ошибку из 'SystemOut.log'. И я бы сказал, что это скорее ошибка компилятора, а не ошибка времени выполнения. Я видел подобные ошибки в Eclipse во время сборки (даже когда у компилятора 1,7, у вас может быть исходный набор до 1.6), но не на сервере во время развертывания/времени выполнения. – Gas