cancel
Showing results for 
Search instead for 
Did you mean: 

J2EE cannot start

Former Member
0 Kudos

I got problem to start J2EE Engine. Below is output of jvm_bootstrap.out

-


Bootstrap MODE:

<INSTANCE GLOBALS>

determined by parameter [ID0018050].

-


Exception occurred:

com.sap.engine.frame.core.configuration.NameNotFoundException: A configuration with the path "cluster_data/dispatcher/ID1805000" does not exist.

at com.sap.engine.core.configuration.impl.ConfigurationDataCacheAllImpl.getSubConfiguration(ConfigurationDataCacheAllImpl.java:107)

at com.sap.engine.core.configuration.impl.ReadAccessConfiguration.getSubConfiguration(ReadAccessConfiguration.java:715)

at com.sap.engine.bootstrap.Synchronizer.getConfiguration(Synchronizer.java:426)

at com.sap.engine.bootstrap.Synchronizer.getElementType(Synchronizer.java:72)

at com.sap.engine.bootstrap.Bootstrap.initDatabaseConnection(Bootstrap.java:420)

at com.sap.engine.bootstrap.Bootstrap.<init>(Bootstrap.java:144)

at com.sap.engine.bootstrap.Bootstrap.main(Bootstrap.java:814)

at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)

at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)

at java.lang.reflect.Method.invoke(Method.java:324)

at com.sap.engine.offline.OfflineToolStart.main(OfflineToolStart.java:81)

Exception occurred:

com.sap.engine.bootstrap.SynchronizationException: Database initialization failed! Check database properties!

at com.sap.engine.bootstrap.Bootstrap.initDatabaseConnection(Bootstrap.java:422)

at com.sap.engine.bootstrap.Bootstrap.<init>(Bootstrap.java:144)

at com.sap.engine.bootstrap.Bootstrap.main(Bootstrap.java:814)

at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)

at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)

at java.lang.reflect.Method.invoke(Method.java:324)

at com.sap.engine.offline.OfflineToolStart.main(OfflineToolStart.java:81)

-


==[ Caused by: ]==----


com.sap.engine.bootstrap.SynchronizationException: No such Dialog Instance (ID1805000) in the database! Check database consistency or local Bootstrap properties!

at com.sap.engine.bootstrap.Synchronizer.getElementType(Synchronizer.java:75)

at com.sap.engine.bootstrap.Bootstrap.initDatabaseConnection(Bootstrap.java:420)

at com.sap.engine.bootstrap.Bootstrap.<init>(Bootstrap.java:144)

at com.sap.engine.bootstrap.Bootstrap.main(Bootstrap.java:814)

at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)

at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)

at java.lang.reflect.Method.invoke(Method.java:324)

at com.sap.engine.offline.OfflineToolStart.main(OfflineToolStart.java:81)

[Bootstrap module]> Problem occurred while performing synchronization.

I think it cause by Java Instance ID. Where can I find the Java Instance ID in database?

Thanks in advance.

Accepted Solutions (1)

Accepted Solutions (1)

Former Member
0 Kudos

Hello Henry,

The advice that you've gotten so far is incorrect. The wrong instance ID is being used because you restored the database with a copy from a different system

At startup the instance ID is calculated with an algorithm based on <SID><Instance><hostname>. The system you copied from has different SID/Instance_name/hostname and therefore the calculated instance ID is incorrect. If you want to hack the system so that it will start you can modify the parameter instance.box.number in the instance PropertySheet (use the Configuration Editor) and instance.properties file so that it matches the value of the source system. It is not enough to simply change the instance.properties file because this file is synchronized with the database copy during the bootstrap phase of startup.

It is not recommended to use the procedure I outlined above. The correct approach is to use the SAP Migration Tools to make a system copy. The migration tool will correctly update the database and filesystem entries so that the instance ID and system information is correct. If you hack the system as you're currently trying to do future upgrades and migrations are going to fail because of the inconsistency between system information and cluster ID.

Regards,

Nathan Swenson

SAP Development Support J2EE

Former Member
0 Kudos

Hi Nathan,

Thank you for your information. I checked that the system is created from scratch. It means that the system has not a problem from system copy.

Is there any calulator/generator for Java ID calculation/generation? (Although I think it is impossible) Or do you think is there any other way to get the right Java ID?

Best Regards,

Henry

Former Member
0 Kudos

The issue is not the cluster ID calculation. The issue is that the instance data is stored under the wrong cluster ID and there's no way to manually change it. If you modify the instance.box.number parameter to match the original system from which the DB copy was taken the calculated cluster ID will match the ID which is in the DB; however this is not the recommended approach and will cause issues with future upgrades. The migration tool does it the right way by changing the cluster ID in the DB to match calculated cluster ID based on <SID><Instance><Host>.

Regards,

Nathan

Former Member
0 Kudos

Dear Nathan,

The system is newly created from source DVD.

I found one strange thing is: when I run offline configure tool, There is no "Propertysheet instance.properties.IDxxxxx" under cluster_data. Is that a hints to solve the problem?

Best Regards,

Henry

Former Member
0 Kudos

In that case it means that the installation did not finish deploying all the database components. The instance.properties propertysheet should have been created in an earlier step in the installation. Did the installation actually finish successfully? I don't see how it could have if the instance.properties propertysheet is missing. During installation there are steps which require restart of j2ee engine and there's no chance for startup to succeed without that propertysheet. During startup the very 1st step is to synchronize the instance.properties with the instance.properties Propertysheet in the database. This step will fail everytime if the Propertysheet is missing.

Please check with the person that performed the installation. You may need to review the sapinst and sapinst_dev logs to check the status of the installation.

Regards,

Nathan

Former Member
0 Kudos

Dear Nathan,

Checked with the person who install the system, the J2EE Engine never startup since install. What do you suggest I can do now? If it is impossible to reinstall again, what else can I do?

Best Regards,

Henry

Former Member
0 Kudos

Hello Henry,

There are 2 options here:

- You can analyze the sapinst and sapinst_dev logs for the current installation and check where the installation went wrong. From the information received so far it appears the installation never finished completely. Look for Error messages and check the end of the sapinst log to see if there's a message indicating that the installation was successful. You should consider opening a SAPNet message under the BC-INS-JCI component for installation issues. If there is a specific error you have questions about you can post it here.

- You can reinstall; however you need to perform the following steps first to completely remote the existing installation. You can reinstall over the top of an existing installation.

To remove an existing installation, please perform the following:

(for dual stack, J2EE + ABAP)

1. Drop the J2EE DB schema (the db schema for this one SAP SID) BE VERY

CAREFUL, do not drop the DB schema for another existing system or the

ABAP schema.

2. Remove folder "data" at:

<drive:>\usr\sap\<sid>\SYS\global\security\

3. Remove folder "SDM" at:

<drive:>\usr\sap\<sid>\DVEBMGS<xx>\

4. Remove folder "j2ee" at:

<drive:>\usr\sap\<sid>\DVEBMGS<xx>\

5. Revert CI instance profile to their original state (backup copies

should exist) # they should be in the state before the start of the

Java Add In

6. Uninstall SCS using SAPinst

7. Restart ABAP

(For J2EE only system)

Start sapinst. There should be an uninstall option in the menu.

Once the J2EE installation is completely removed you can re-install it.

Regards,

Nathan

Former Member
0 Kudos

You can also uninstall using SAPINST

SAP NW 2004s Supp Rel 2 ->Additional Software Life-Cycle Tasks-> Uninstall -> Unistall System /Standone Engine.

Make sure you choose SCS / JCXX (Java Instance) to uninstall.

Cheers

Shaji

Answers (1)

Answers (1)

Former Member
0 Kudos

Problem occurred while performing synchronization. :

Probably you can do this check

1) Check instance.properties under /usr/sap/SID/<INSTANCE NO/j2ee/cluster

and

2) Login to Configtool and compare the Instance ID, Dispatcher ID and Server ID. with that of in Instance.Properties. They should be in sync.

Change the Instance ID, Dispatcher ID and Server ID if they are wrongly mentioned in the instance.properties and restart.

You can also Refer SAP Note 757692

Regards

Shaji

Edited by: Shaji Jacob on Mar 11, 2008 11:04 AM

Edited by: Shaji Jacob on Mar 11, 2008 11:11 AM

Former Member
0 Kudos

Thank you for your reply.

I cannot find the Java ID in ConfigTools. Where does it locate?

Former Member
0 Kudos

Hi

If your J2EE engine is not started, the Instance ID will not show in the Configtool. Start and try it.

1) If you are not able to start configtool.sh use offlinecfgeditor.sh (for unix) or offlinecfgeditor.bat (for windows)and change all the Hostname / SID / System No. / Port Nos / etc

This link should be useful to you http://help.sap.com/saphelp_nw04/helpdata/en/e8/f48b33f9a3423c9e688dfa56330e79/content.htm

Shaji

Edited by: Shaji Jacob on Mar 17, 2008 10:58 AM

Former Member
0 Kudos

Thank you for your reply.

I cannot see any J2EE process in SAP Server Manager, so I cannot start the J2EE engine. However I can use configtool.bat to change the configuration.

As I know the information in instance.properties is for the system to start the J2EE engine. However I cannot confirm the file information is correct or not. I just join the project and in same landscape of development server of the system, the whole cluster folder is missing and the J2EE engine cannot start according to that. That's why I do not think the instance.properties information can 100% trustful.

What can I do to start the J2EE engine again, as I read information from log in the server, the Java ID ID0018050 does not exist in the database.

When I use Offline Configuration Editor, I saw another ID under Configurations --> cluster_data --> server --> cfg. It shows a property sheet "Propertysheet element-info.ID141703". Will ID141703 be the Java ID of the system? If it is, is that just replace the existing ID ID0018050 to ID141703 in instance.properties under cluster directory?

Former Member
0 Kudos

After your DB refresh, all the JAVA ID will change on the target box, now JAVA Instance ID of the Source and Target system will be the same. So copy the Instance.properties to the target system from your source system and change only the hostame, SID, System no. Port nos. Dont change the Java Instance ID's. This will fix your problem.

The Instance ID's will be different for the Server and the Dispatcher. So if you copy for the source system, u need not change them, only change u need to is hostame, SID, System no. Port nos

Cheers

Shaji

Edited by: Shaji Jacob on Mar 18, 2008 10:41 AM

Former Member
0 Kudos

I am pasting a sample Instance.properties file and marked it with * * the places you need to change as per your system details

ID29910700.ClassPath=./bin/boot/boot.jar:./bin/system/bytecode.jar:.

ID29910700.Debuggable=no

ID29910700.JLaunchParameters=

ID29910700.JavaParameters=-XX:NewSize=85M -XX:MaxNewSize=85M -Xms170M -XX:+DisableExplicitGC -verbos

e:gc -Xloggc:GC.log -Dstartup.mode=SAFE -Dstartup.action=NONE

ID29910700.JavaPath=/opt/java1.4

ID29910700.LogName=dispatcher

ID29910700.MainClass=com.sap.engine.boot.Start

ID29910700.MaxHeapSize=170

ID29910700.Name=dispatcher

ID29910700.Parameters=

ID29910700.RootPath=/usr/sap/TST/DVEBMGS01/j2ee/cluster/dispatcher

ID29910700.Type=dispatcher

ID29910750.ClassPath=./bin/boot/boot.jar:./bin/boot/jaas.jar:./bin/system/bytecode.jar:.

ID29910750.DebugMode=no

ID29910750.DebugPort=50121

ID29910750.Debuggable=no

ID29910750.JLaunchParameters=

ID29910750.JavaParameters=-Djava.security.policy=./java.policy -Djava.security.egd=file:/dev/urandom

-Dorg.omg.CORBA.ORBClass=com.sap.engine.system.ORBProxy -Dorg.omg.CORBA.ORBSingletonClass=com.sap.e

ngine.system.ORBSingletonProxy -Djavax.rmi.CORBA.PortableRemoteObjectClass=com.sap.engine.system.Por

tableRemoteObjectProxy -Djco.jarm=1 -XX:MaxPermSize=512M -XX:PermSize=512M -Xms2048M -XX:NewSize=320

M -XX:MaxNewSize=320M -XX:DisableExplicitGC -verbose:gc -Xloggc:GC.log -XX:PrintGCDetails -XX:+Pri

ntGCTimeStamps -Djava.awt.headless=true -Dsun.io.useCanonCaches=false -XX:SoftRefLRUPolicyMSPerMB=1

-XX:SurvivorRatio=2 -XX:TargetSurvivorRatio=90 -Dorg.omg.PortableInterceptor.ORBInitializerClass.com

.sap.engine.services.ts.jts.ots.PortableInterceptor.JTSInitializer -Dstartup.mode=SAFE -Dstartup.act

ion=NONE

ID29910750.JavaPath=/opt/java1.4

ID29910750.LogName=server0

ID29910750.MainClass=com.sap.engine.boot.Start

ID29910750.MaxHeapSize=2048

ID29910750.Name=server0

ID29910750.Parameters=

ID29910750.RootPath=/usr/sap/TST/DVEBMGS01/j2ee/cluster/server0

ID29910750.Type=server

bootstrap.ClassPath=./bootstrap/launcher.jar

bootstrap.JavaParameters=-Djco.jarm=1

bootstrap.JavaPath=/opt/java1.4

bootstrap.MainClass=com.sap.engine.offline.OfflineToolStart

bootstrap.MaxHeapSize=256

bootstrap.Name=bootstrap

bootstrap.Parameters=com.sap.engine.bootstrap.Bootstrap ./bootstrap ID0299107

bootstrap.RootPath=/usr/sap/TST/DVEBMGS01/j2ee/cluster

bootstrap.Type=bootstrap

bootstrap*ID29910700.ClassPath=./bootstrap/launcher.jar

bootstrap*ID29910700.JLaunchParameters=

bootstrap*ID29910700.JavaParameters=-Djco.jarm=1

bootstrap*ID29910700.JavaPath=/opt/java1.4

bootstrap*ID29910700.MainClass=com.sap.engine.offline.OfflineToolStart

bootstrap*ID29910700.MaxHeapSize=256

bootstrap*ID29910700.Name=dispatcher bootstrap

bootstrap*ID29910700.Parameters=com.sap.engine.bootstrap.Bootstrap ./bootstrap ID029910700

bootstrapID29910700.RootPath=/usr/sap/TST/DVEBMGS01*/j2ee/cluster

bootstrap*ID29910700.Type=bootstrap

bootstrap*ID29910750.ClassPath=./bootstrap/launcher.jar

bootstrap*ID29910750.JLaunchParameters=

bootstrap*ID29910750.JavaParameters=-Djco.jarm=1

bootstrap*ID29910750.JavaPath=/opt/java1.4

bootstrap*ID29910750.MainClass=com.sap.engine.offline.OfflineToolStart

bootstrap*ID29910750.MaxHeapSize=256

bootstrap*ID29910750.Name=server0 bootstrap

bootstrap*ID29910750.Parameters=com.sap.engine.bootstrap.Bootstrap ./bootstrap ID029910750

bootstrapID29910750.RootPath=/usr/sap/TST/DVEBMGS01*/j2ee/cluster

bootstrap*ID29910750.Type=bootstrap

instance.box.number=TSTDVEBMGS01test0002

instance.en.host=test0002

instance.en.port=3211

instance.enabled=yes

instance.install.dir=/usr/sap/TST/DVEBMGS01/j2ee

instance.ms.host=test0002

instance.ms.port=3911

instance.osLibsPath=/usr/sap/TST/DVEBMGS01/j2ee/os*libs

instance.runAction=NONE

instance.runMode=safe

instance.system.id=1

Shaji

Edited by: Shaji Jacob on Mar 18, 2008 11:04 AM