Predeployment of PersistenceUnit [appcenterdb-oracle] failed - ibm-mobilefirst

I installed the following on my RHEL 6
(1) MFP63
(2) MySQL56
(3) WAS 8.5.5.6
and trying to set up my first mobile first project but 'messages.log' has the following errors
I FFDC1015I: An FFDC Incident has been created: "javax.persistence.PersistenceException: Exception [EclipseLink-28018] (Eclipse Persistence Services - 2.6.0.WAS-v20150513-26196d2): org.eclipse.persistence.exceptions.EntityManagerSetupException
Exception Description: Predeployment of PersistenceUnit [appcenterdb-oracle] failed.
Internal Exception: Exception [EclipseLink-7157] (Eclipse Persistence Services - 2.6.0.WAS-v20150513-26196d2): org.eclipse.persistence.exceptions.ValidationException
Exception Description: Entity class [class com.ibm.puremeap.jpa.entity.PushBatchDeviceEntity] must use a #JoinColumn instead of #Column to map its relationship attribute [device]. com.ibm.ws.jpa.management.JPAPUnitInfo.createEMFactory 759" at ffdc_15.07.27_21.00.27.0.log
[7/27/15 21:00:27:238 IST] 00000068 com.ibm.ws.jpa.management.JPAPUnitInfo E CWWJP0015E: An error occurred in the org.eclipse.persistence.jpa.PersistenceProvider persistence provider when it attempted to create the container entity manager factory for the appcenterdb-oracle persistence unit. The following error occurred: Exception [EclipseLink-28018] (Eclipse Persistence Services - 2.6.0.WAS-v20150513-26196d2): org.eclipse.persistence.exceptions.EntityManagerSetupException
Exception Description: Predeployment of PersistenceUnit [appcenterdb-oracle] failed.
Internal Exception: Exception [EclipseLink-7157] (Eclipse Persistence Services - 2.6.0.WAS-v20150513-26196d2): org.eclipse.persistence.exceptions.ValidationException
Exception Description: Entity class [class com.ibm.puremeap.jpa.entity.PushBatchDeviceEntity] must use a #JoinColumn instead of #Column to map its relationship attribute [device].
Message says 'Predeployment of PersistenceUnit [appcenterdb-oracle] failed' but I am using 'MySQL' instead of 'oracle' which is bit confusing to me
I am using Java 8 (with JDK6 and 7 I was facing other issues)
http://pastebin.com/WcWBUjVn (server.xml)
http://pastebin.com/QzByZ63T (messages.log)
Thanks
Sathish Kumar

There are three issues in total:
You are using Java 8 with a MobileFirst Foundation version that does not support it. The system requirements of MobileFirst Foundation 7.0 state that only Java 6 and Java 7 are supported. The symptom is seen in your first messages.log: It is the exception java.lang.IllegalStateException: Context namespace element 'annotation-config' and its parser class [org.springframework.context.annotation.AnnotationConfigBeanDefinitionParser] are only available on JDK 1.5 and higher
Your server.xml contains two elements <application id="worklightconsole" name="worklightconsole" location="worklightconsole.war" type="war">. That is, you have two web applications with the same id, the same name, and the same context root. This can never work. The cause is apparently that you passed worklightconsole.war as argument to <configureApplicationServer>. Instead, as documented in Deploying the project WAR file, the WAR file that you specify should be a MobileFirst project WAR file, built through MobileFirst Studio or through the <war-builder> Ant task.
The second messages.log file contains the log messagesFWLSE2008I: MBean registration succeeded for: com.worklight.common.server.jmx.api:type=WorklightAdmin,qualifier=worklightadmin
FWLSE2008I: MBean registration succeeded for: com.worklight.common.server.jmx.api:type=ProjectManagement_simpleServer,qualifier=worklightconsole [project worklightconsole]
The first one shows an empty environment id, whereas the second one shows an environment id "simpleServer". This environment id is also visible in the server.xml file:<jndiEntry jndiName="worklightconsole/ibm.worklight.admin.environmentid" value='"simpleServer"'/>
But according to the documentation of <configureApplicationServer>, you should pass the same environment id value in both cases.

#Sathish, In the server.xml you have uploaded, I can see those features
<feature>javaee-7.0</feature>
<feature>servlet-3.1</feature>
<feature>jdbc-4.1</feature>
The last two features are not installed by MobileFirst Ant tasks or the Server Configuration Tool.
This let me think you changed them manually after the installation process because you are using an unsupported Liberty profile flavour like
WAS Liberty V8.5.5.6 with Java EE 7 Web Profile or WAS Liberty V8.5.5.6 with Java EE 7 Full Platform
which does not provide the expected features servlet-3.0 and jdbc-4.0 but instead servlet-3.1 and jdbc-4.1.
Actually, MFP 6.3 only supports MFP 6.3 only supports WebSphere Application Server Liberty Core
http://www-969.ibm.com/software/reports/compatibility/clarity-reports/report/html/prereqsForProduct?deliverableId=1404132386734#!
which contains
You may get it from the FixCentral website
http://www-933.ibm.com/support/fixcentral/
On Select product tab, choose
Product Group : WebSphere
Select from WebSphere : WebSphere Application Server
Installed Version : 8.5.5.6
Platform : All
Then select
Individual fix IDs : wlp-core-runtime-8.5.5.6

As 'slowhand' suggested the issue was with 'server.xml' because of multiple 'application id' with the same name
It appears 'ant' tasks does not generate all the tags correctly and I made little corrections to make it work
Thanks
Sathish Kumar

Related

MFP8 - WASND installation Issue

I am trying to install MFP Product version: 8.0.0.00-20170125-0919 in my QA environment on WASND 8.5.5. Server topology is, DMGR, DB, WAS are in a Private VLAN and WEB(IHS) server in public VLAN. Seems like I missed some JNDI property.
In MFP Console, I am getting the below error:
FWLSE3002E: The resource is not found.
FWLSE3030E: The runtime "mfp" does not exist in the MobileFirst administration database. The database may be corrupted.
In MFP Console - Administration DB, Live Update, and Push Service are showing inactive.
See the JNDI properties such as mfp.admin.proxy*. under "Table 4. JNDI properties for administration service: proxies" in this link : https://www.ibm.com/support/knowledgecenter/en/SSHS8R_8.0.0/com.ibm.worklight.installconfig.doc/install_config/r_wladmin_jndi_property_list.html#r_wladmin_jndi_property_list
Also verify that jmx JNDI properties are correctly set. You can find the JXM properties that needs to be set from the link : https://www.ibm.com/support/knowledgecenter/SSHS8R_8.0.0/com.ibm.worklight.installconfig.doc/install_config/c_wasnd_topol.html

Skip loading of a jar file in WebSphere 8.5.5

I am getting an exception as given below.
I want Response class to be loaded from jawax-ws-rs.api.jar.
but its getting loaded from the j2ee.jar and throwing the below error:-
java.lang.NoSuchMethodError: javax/ws/rs/core/Response.readEntity(Ljava/lang/Class;)Ljava/lang/Object
Is there any way we can skip loading of j2ee.jar at startup of WebSphere?
Your question is incorrect, probably what you really want is to replace JAX-RS engine provided with WAS with some third part. And you should never pack j2ee.jar with your application as all required classes are already loaded by the server.
Check the following posts and links:
JAX-RS Jersey 2.10 support in Websphere 8
Disabling the JAX-RS runtime environment

HTTP Status 500 org.apache.jasper.JasperException: Unable to compile class for JSP:

HTTP Status 500 -
type Exception report message description The server encountered an internal error () that prevented it from fulfilling this request. exception org.apache.jasper.JasperException: Unable to compile class for JSP: An error occurred at line: 1 in the generated java file The type java.util.Map$Entry cannot be resolved. It is indirectly referenced from required .class files Stacktrace: org.apache.jasper.compiler.DefaultErrorHandler.javacError(DefaultErrorHandler.java:102) org.apache.jasper.compiler.ErrorDispatcher.javacError(ErrorDispatcher.java:331) org.apache.jasper.compiler.JDTCompiler.generateClass(JDTCompiler.java:469) org.apache.jasper.compiler.Compiler.compile(Compiler.java:378) org.apache.jasper.compiler.Compiler.compile(Compiler.java:353) org.apache.jasper.compiler.Compiler.compile(Compiler.java:340) org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:646) org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:357) org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:390) org.apache.jasper.servlet.JspServlet.service(JspServlet.java:334) javax.servlet.http.HttpServlet.service(HttpServlet.java:722)note The full stack trace of the root cause is available in the Apache Tomcat/7.0.27 logs.
Plz help me friends how to solve this problem . I have got this problem when i open webpage (localhost:8085)soon after installing tomcat (i have set classpath tooo ) .Plz kindly send any answers to rakeshdatla999#gmail.com...
Possible mismatch between version of Tomcat and version of JDK/JRE. It happened to me on Mac with Java 8 and Tomcat 7.2*. Had to install and use Tomcat 7.5*
I was using Windows 10 OS for developing applications in TM1 Performance Modeller as part of Academic projects.
I had been trying to run pmpsvc services of IBM Performance Modeller. I was getting the error "unable to logon to pmpsvc". Also, when I was trying to logon to Application Server in my browser, I was getting the same error that you've posted here.
What I think(after going through different posts in the search results of Google and Stackoverflow): There is some compatibility issue with JSP 2.1 in your project or maybe Tomcat version in-compatibilty.
How this was solved: I installed Windows 7 in dual-boot mode by allocating 100 GB to Windows 7. Installed the IBM software TM1 package(Performance Modeller and BI Insight Tool) in Win7 and everything runs smoothly now.
The IBM Instructors that demonstrated the use of Tm1 Dimensional Modelling also were running Windows 7 in their machines.
I guess - if you wish to solve the problem without going into the details of this exception, You can give this a try!

Why is server-config.wsdd not being created by the eclipse web services wizard?

I am using eclipse (Juno) to develop a web service for Tomcat 7 and Axis2. I have a java bean which I want to use to create the web service. The web service wizard seems to run ok but when the server starts I get this error message:
2012-11-08 13:31:20,059 ERROR [localhost-startStop-1] configuration.EngineConfigurationFactoryServlet (EngineConfigurationFactoryServlet.java:162) getServerEngineConfig
- Unable to find config file.
Creating new servlet engine config file: /WEB-INF/server-config.wsdd
I understand this to mean that server-config.wsdd is missing. How do I create this file? Why isn't it being generated automatically by the wizard?
Update
I recreated the project and the error message does not appear. I guess that I did something wrong. Perhaps Axis1 was being used as Andreas Veithen suggests below.
That is an error message generated by Axis 1.x. If you are developing an Axis2 service, then you shouldn't attempt to deploy it on Axis 1.x.
While generating java beans or wsdl, select start service option in webservices wizard then eclipse will create the server-confid.wsdd file for you. Hope this helps.

can't deploy ear file on Weblogic 12c

i have EAR file contains jar and war packages.this ear file deploy on glassfish correctly but when deploy this ear file on weblogic 12c, get this error :
Unable to access the selected application.
Error Exception in AppMerge flows' progression
Error Exception in AppMerge flows' progression
Error Unable to resolve deadlock in factory claims
Error Unable to resolve deadlock in factory claims
i check application.xml and name of jar and war packages are correct.anybody have idea for solving this issue ?
I too had this problem and tried everything (schemas, project structure, dependant libs, etc). Finally compared my domain with the sample "medrec", the only difference was that I had added SIP support. After removing this support, I can now deploy my EAR with included WAR and EJBs. I assume this is a bug in 12c...
I too had the same problem and I had to create another domain to resolve the issue.The key here is not to use the eclipse tool to create the the domain as the option to create "Basic Weblogic Domain" is not presented.
The option to create a basic weblogic domain is presented when you launch the weblogic domain creation wizard.
I had faced the exact same problem today. This problem is associated with the way the Domain was created. If you have used "Basic WebLogic SIP Server Domain" then it would occur while installing an ear. You can double check if the Domain is created with Basic SIP or not, go to your Weblogic Server Domain >> bin >> setDomainEnv (cmd or sh) file and check if you have the below properties defined.
-- set WLSS_HOME=C:\Oracle\Middleware\wlserver_12.1\sip
-- set SIP_ENABLED=true
I tried to create the Domain again with JAX-RPC extension instead of Basic SIP and got this problem resolved.