StackOverflowError while loading amserver module with SUN JES5 WebServer 7

OS Solaris SPARC 9 with all patches needed by JES5 installer.

Installed JES5 components: Directory Server 6.0, Web Server 7.0

After running JES5 installer in order to install Access Manager 7.1 I can see that AM was installed and configured successfully.

All nessesary enries (such as ou=DSAMEUsers, amldapuser etc) was created.

According to log files, AM was successfully registred with cacao and deployed to Web Server.

I've verified that the instance where AM was deployed, is running.

But when I try to access AM login page by typing

http://servername:serverport/amserver I receive an "error 500" page

and in webserver logs I can see the following:

WARNING

WEB6100: locale-charset-info is deprecated, please use parameter-encoding

and the next entry is

FALURE

WebModule[/amserver]PWC1396: Servlet /amserver threw load() exception

java.lang.StackOverflowError

at java.util.Hashtable.get(Hashtable.java:336)

at java.net.URL.getURLStreamHandler(URL.java:1097)

at java.net.URL.<init>(URL.java:572)

at java.net.URL.<init>(URL.java:464)

at java.net.URL.<init>(URL.java:413)

at com.iplanet.services.naming.WebtopNaming.updatePlatformServerIDs(WebtopNaming.java:801)

at com.iplanet.services.naming.WebtopNaming.updateNamingTable(WebtopNaming.java:704)

at com.iplanet.services.naming.WebtopNaming.getNamingProfile(WebtopNaming.java:603)

at com.iplanet.services.naming.WebtopNaming.getServerID(WebtopNaming.java:405)

at com.iplanet.services.naming.WebtopNaming.getServerID(WebtopNaming.java:381)

at com.iplanet.services.naming.WebtopNaming.updateNamingTable(WebtopNaming.java:724)

at

com.iplanet.services.naming.WebtopNaming.getNamingProfile(WebtopNaming.java:603)

at com.iplanet.services.naming.WebtopNaming.getServerID(WebtopNaming.java:405)

at com.iplanet.services.naming.WebtopNaming.getServerID(WebtopNaming.java:381)

at com.iplanet.services.naming.WebtopNaming.updateNamingTable(WebtopNaming.java:724)

at com.iplanet.services.naming.WebtopNaming.getNamingProfile(WebtopNaming.java:603)

at com.iplanet.services.naming.WebtopNaming.getServerID(WebtopNaming.java:405)

at com.iplanet.services.naming.WebtopNaming.getServerID(WebtopNaming.java:381)

at com.iplanet.services.naming.WebtopNaming.updateNamingTable(WebtopNaming.java:724)

at com.iplanet.services.naming.WebtopNaming.getNamingProfile(WebtopNaming.java:603)

at com.iplanet.services.naming.WebtopNaming.getServerID(WebtopNaming.java:405)

at com.iplanet.services.naming.WebtopNaming.getServerID(WebtopNaming.java:381)

at com.iplanet.services.naming.WebtopNaming.updateNamingTable(WebtopNaming.java:724)

at com.iplanet.services.naming.WebtopNaming.getNamingProfile(WebtopNaming.java:603)

at com.iplanet.services.naming.WebtopNaming.getServerID(WebtopNaming.java:405)

at com.iplanet.services.naming.WebtopNaming.getServerID(WebtopNaming.java:381)

at com.iplanet.services.naming.WebtopNaming.updateNamingTable(WebtopNaming.java:724)

at com.iplanet.services.naming.WebtopNaming.getNamingProfile(WebtopNaming.java:603)

at com.iplanet.services.naming.WebtopNaming.getServerID(WebtopNaming.java:405)

at com.iplanet.services.naming.WebtopNaming.getServerID(WebtopNaming.java:381)

at com.iplanet.services.naming.WebtopNaming.updateNamingTable(WebtopNaming.java:724)

at com.iplanet.services.naming.WebtopNaming.getNamingProfile(WebtopNaming.java:603)

at com.iplanet.services.naming.WebtopNaming.getServerID(WebtopNaming.java:405)

at com.iplanet.services.naming.WebtopNaming.getServerID(WebtopNaming.java:381)

at com.iplanet.services.naming.WebtopNaming.updateNamingTable(WebtopNaming.java:724)

at com.iplanet.services.naming.WebtopNaming.getNamingProfile(WebtopNaming.java:603)

at com.iplanet.services.naming.WebtopNaming.getServerID(WebtopNaming.java:405)

at com.iplanet.services.naming.WebtopNaming.getServerID(WebtopNaming.java:381)

at com.iplanet.services.naming.WebtopNaming.updateNamingTable(WebtopNaming.java:724)

at com.iplanet.services.naming.WebtopNaming.getNamingProfile(WebtopNaming.java:603)

at com.iplanet.services.naming.WebtopNaming.getServerID(WebtopNaming.java:405)

at com.iplanet.services.naming.WebtopNaming.getServerID(WebtopNaming.java:381)

at com.iplanet.services.naming.WebtopNaming.updateNamingTable(WebtopNaming.java:724)

at com.iplanet.services.naming.WebtopNaming.getNamingProfile(WebtopNaming.java:603)

at com.iplanet.services.naming.WebtopNaming.getServerID(WebtopNaming.java:405)

at com.iplanet.services.naming.WebtopNaming.getServerID(WebtopNaming.java:381)

at com.iplanet.services.naming.WebtopNaming.updateNamingTable(WebtopNaming.java:724)

at com.iplanet.services.naming.WebtopNaming.getNamingProfile(WebtopNaming.java:603)

at com.iplanet.services.naming.WebtopNaming.getServerID(WebtopNaming.java:405)

at com.iplanet.services.naming.WebtopNaming.getServerID(WebtopNaming.java:381) at com.

The AM logs are empty.

I wonder if using deprecateв locale-charset-info instead of the parameter-encoding subelement of sun-web-app could be the reason of amserver module's failure?

[5445 byte] By [Re-La] at [2007-11-27 6:42:51]
# 1

I would log into the directory and check the sunserviceschema attribute of the ou=1.0,ou=iplanetamplatformservice,ou=services,AM_ROOT_DN LDAP entry

Check the iplanet-am-platform-server-list attribute. If it looks wrong, copy and edit the /etc/opt/SUNWam/config/xml/amPlatform.xml to have the right configuration and then use the amadmin command to delete the iPlanetAMPlatformService and then re-add it.

Aaron_Andersona at 2007-7-12 18:13:15 > top of Java-index,Web & Directory Servers,Directory Servers...
# 2

here is an entry under ou=iPlanetAMPlatformService, ou=services. How can I understand if something's wrong with it?

And what about the iplanet-am-platform-server-list attribute?

Is "http://amserverhost.org.com:58080|01" a right value?

My web server is listening on port 8088 with web server admin port 8989.

dn: ou=1.0, ou=iPlanetAMPlatformService, ou=services, dc=org,dc=com

ou: 1.0

objectClass: top

objectClass: sunService

sunserviceschema::

<?xml version="1.0" encoding="UTF-8"?>

<ServicesConfiguration>

<Service name="iPlanetAMPlatformService" version="1.0">

<Schema i18nFileName="amPlatform" i18nKey="iplanet-am-platform-service-description" propertiesViewBeanURL="../service/SCPlatform" revisionNumber="20" serviceHierarchy="/DSAMEConfig/iPlanetAMPlatformService" >

<Global validate="yes" >

<AttributeSchema cosQualifier="default" i18nKey="" isSearchable="no" name="serviceObjectClasses" syntax="string" type="list" ><DefaultValues>

<Value>iplanet-am-platform-service</Value>

</DefaultValues>

</AttributeSchema>

<AttributeSchema cosQualifier="default" i18nKey="a100" isSearchable="no" name="iplanet-am-platform-site-list" syntax="string" type="list" validator="SiteIDValidator" >

</AttributeSchema>

<AttributeSchema cosQualifier="default" i18nKey="a101" isSearchable="no" name="iplanet-am-platform-server-list" syntax="string" type="list" validator="ServerIDValidator" >

<DefaultValues> <Value>http://amserverhost.org.com:58080|01</Value></DefaultValues>

</AttributeSchema>

<AttributeSchema cosQualifier="default" i18nKey="a102" isSearchable="no" name="iplanet-am-platform-locale" syntax="string" type="single" >

<DefaultValues>

<Value>en_US</Value>

</DefaultValues>

</AttributeSchema>

<AttributeSchema cosQualifier="default" i18nKey="a103" isSearchable="no" name="iplanet-am-platform-cookie-domains" syntax="string" type="list" >

<DefaultValues>

<Value>.org.com</Value>

</DefaultValues>

</AttributeSchema>

<AttributeSchema cosQualifier="default" i18nKey="a104" isSearchable="no" name="iplanet-am-platform-login-url" syntax="url" type="single" >

<DefaultValues> <Value>/amserver/UI/Login</Value></DefaultValues>

</AttributeSchema>

<AttributeSchema cosQualifier="default" i18nKey="a105" isSearchable="no" name="iplanet-am-platform-logout-url" syntax="url" type="single" >

<DefaultValues> <Value>/amserver/UI/Logout</Value></DefaultValues>

</AttributeSchema>

<AttributeSchema cosQualifier="default" i18nKey="a106" isSearchable="no" name="iplanet-am-platform-available-locales" syntax="string" type="list" >

<DefaultValues>

<Value>en_US</Value>

</DefaultValues>

</AttributeSchema>

<AttributeSchema cosQualifier="default" i18nKey="a107" isSearchable="no" name="iplanet-am-platform-client-charsets" syntax="string" type="list" >

</AttributeSchema>

<AttributeSchema cosQualifier="default" isSearchable="no" name="ServerIDValidator" syntax="string" type="validator" > <DefaultValues> <Value>com.sun.identity.sm.ServerIDValidator</Value> </DefaultValues>

</AttributeSchema>

<AttributeSchema cosQualifier="default" isSearchable="no" name="SiteIDValidator" syntax="string" type="validator" > <DefaultValues> <Value>com.sun.identity.sm.SiteIDValidator</Value> </DefaultValues>

</AttributeSchema>

</Global>

</Schema>

</Service>

</ServicesConfiguration>

Re-La at 2007-7-12 18:13:15 > top of Java-index,Web & Directory Servers,Directory Servers...
# 3

If the amserver web application is deployed to the web server and your web server is listening on port 8088 then you should have the entry

http://amserverhost.com:8088|01

Whatever protocol, hostname, and port you use to access the iamserver web application should be used. You will also need to check the AMConfig.properties file and make sure the values there are correct too.

com.iplanet.am.server.protocol=http

com.iplanet.am.server.host=amserver.com

com.iplanet.am.server.port=8088

com.iplanet.am.console.protocol=http

com.iplanet.am.console.host=amserver.com

com.iplanet.am.console.port=8088

com.iplanet.am.profile.host=amserver.com

com.iplanet.am.profile.port=8088

com.iplanet.am.naming.url=http://amserver.com:8088/amserver/namingservice

com.iplanet.am.notification.url=http://amserver.com:8088/amserver/notificationservice

Aaron_Andersona at 2007-7-12 18:13:15 > top of Java-index,Web & Directory Servers,Directory Servers...