Mostrando las entradas con la etiqueta error. Mostrar todas las entradas
Mostrando las entradas con la etiqueta error. Mostrar todas las entradas

13 agosto 2010

WP615 - Error tras la instalación JVMJ9VM011W

Tras la instalación del WP615 en CentOS  quise ejecutar el siguiente comando:

[root@localhost bin]# ./serverStatus.sh WebSphere_Portal
... y recibí el siguiente error:

JVMJ9VM011W Unable to load j9jit23: /was/IBM/WebSphere/AppServer/java/jre/bin/libj9jit23.so: cannot restore segment prot after reloc: Permission denied 
JVMJ9VM011W Unable to load jclscar_23: /was/IBM/WebSphere/AppServer/java/jre/bin/libjclscar_23.so: cannot restore segment prot after reloc: Permission denied 
Could not create the Java virtual machine.

Para arreglarlo ejecuté el siguiente comando con el usuario root del servidor:

[root@localhost bin]# setenforce 0 

10 agosto 2010

EJPSG0015E: Data Backend Problem

Hace poco realicé la instalación de un TDS 6.2 y lo integré a mi portal. Quise probar la creación de usuarios desde el portal, sin embargo he recibido el siguiente mensaje:

EJPSG0015E: Data Backend Problem com.ibm.websphere.wim.exception.WIMSystemException: CWWIM4520E The 'javax.naming.NoPermissionException: [LDAP: error code 50 - Insufficient Access Rights]; remaining name 'uid=apiconz,cn=temporal,o=rimac'; resolved object com.sun.jndi.ldap.LdapCtx@66326632' naming exception occurred during processing.
com.ibm.wps.util.DataBackendException: EJPSG0015E: Data Backend Problem com.ibm.websphere.wim.exception.WIMSystemException: CWWIM4520E The 'javax.naming.NoPermissionException: [LDAP: error code 50 - Insufficient Access Rights]; remaining name 'uid=apiconz,cn=temporal,o=rimac'; resolved object com.sun.jndi.ldap.LdapCtx@66326632' naming exception occurred during processing.
EJPSG0015E: Data Backend Problem com.ibm.websphere.wim.exception.WIMSystemException: CWWIM4520E The 'javax.naming.NoPermissionException: [LDAP: error code 50 - Insufficient Access Rights]; remaining name 'uid=apiconz,cn=temporal,o=rimac'; resolved object com.sun.jndi.ldap.LdapCtx@66326632' naming exception occurred during processing.
CWWIM4520E The 'javax.naming.NoPermissionException: [LDAP: error code 50 - Insufficient Access Rights]; remaining name 'uid=apiconz,cn=temporal,o=rimac'; resolved object com.sun.jndi.ldap.LdapCtx@66326632' naming exception occurred during processing.

Revisando un poco la configuración encontré que faltaban dos configuraciones:

Por un lado debía indicarle al portal en qué rama del TDS debía guardar los usuarios que se iban creando, para esto modifiqué el archivo wimconfig.xml

La configuración de este archivo apuntaba a la ruta del repositorio por defecto del portal (hasta este punto ya lo había eliminado):

    o=defaultWIMFileBasedRealm" name="PersonAccount">
      uid
    
    o=defaultWIMFileBasedRealm" name="Group">
      cn
    

Asi que lo que hice fue cambiar la ruta para que apunte a ramas existentes en mi TDS:

    ou=personas,o=apiconz" name="PersonAccount">
      uid
    
    ou=grupos,o=apiconz" name="Group">
      cn
    




Adicionalmente a esta configuración, requería darle al usuario con el que enlazamos al portal con el tds permisos para que pudiera escribir sobre dichas ramas.

Para esto, entramos a Directory Management > Manage Entries seleccionamos la rama sobre la que queremos que el usuario pueda escribir y seleccionamos la opción Edit ACL... del menú desplegable que se encuentra en la parte superior de la grilla.

En la pantalla que nos aparece a continuación seleccionamos la opción Filtered ACLs e ingresamos los campos que se nos presentan en el formulario.

Luego vamos a la opción Owners y agregamos a nuestro usuario de enlace como propietario de la rama correspondiente.


18 julio 2010

Error Code: 1267 Illegal mix of collations

Hoy mientras trataba de ejecutar un select entre dos tablas, en mySQL, recibí el siguiente mensaje de error:
Error Code: 1267 Illegal mix of collations (latin1_swedish_ci,IMPLICIT) and (latin1_spanish_ci,IMPLICIT) for operation '=')
Para entender este error primero veamos en qué consiste un COLLATION, segun sqlinfo.net :
"A character set is a set of symbols and encodings. collation is a set of rules for comparing characters in a character set." 
 Ok, luego de ver esto es importante hacer notar que el proyecto que vengo trabajando, trabaja con una base de datos mysql gestionada originalmente mediante la herramienta phpAdmin, y esta emplea por defecto el collation "latin1_swedish_ci" para crear sus tablas. Por mi parte los scripts de las tablas que debía agregar los hice mediante mi herramienta mySQL Workbench con el collation "latin1_spanish_ci" por defecto.

El problema viene al momento de efectuar la comparación, dado que las tablas, ya existentes como las que agregué yo, poseen collations diferentes la base de datos no puede determinar que reglas de comparación empleará para operaciones que las involucren juntas. Por esta razón, para salvar este problema agregamos la clausula COLLATE 'nombre_del_collation' para decirle a la BD qué reglas emplear. A continuación, un pequeño ejemplo de cómo quedaría nuestra sentencia.

SELECT e.column_id INTO tmp_id FROM tabla1 e INNER JOIN tabla2 m ON e.column_id = m.column_foreign_id_1 INNER JOIN table3 p ON p.column_id = m.column_foreign_id_2 WHERE p.column_id = valor_de_comparacion COLLATE 'latin1_spanish_ci';

16 julio 2010

SECJ0373E: Cannot create credential for the user due to failed validation of the LTPA token.

Problem / Problema:
We have 2 environments... a cluster of WPS and an standalone WCM. After of change the configuration of realm to federated ldap repository, we tried to rename the wcm realm name to the name of portal realm, but the WCM not started correctly; we can to navigate on Admin Console but when we're trying to open the wcm portal, the server just show a error indicating that some portal services can't be started.
Tenemos dos ambientes... un cluster de WebSphere Portal y un Web Content Manager. Después de cambiar la configuración del realm para federated, tratamos de renombrar el realm del WCM con el nombre del realm del portal (para que funcione el Single Sign On), pero el WCM no inicia correctamente; podemos navegar en la Consola de Administración del WAS pero cuando tratamos de ingresar al portal, solo nos muestra un error indicando que algunos servicios del portal no pudieron ser iniciados.


Trace:

SECJ0373E: Cannot create credential for the user due to failed validation of the LTPA token. The exception is com.ibm.websphere.security.CustomRegistryException: The realm in the token: apiconzldap.apiconz.info:389 does not match the current realm: PortalWcmRealmFederated
at com.ibm.ws.security.ltpa.LTPAServerObject.getRelativeName(LTPAServerObject.java:1473)
at com.ibm.ws.security.ltpa.LTPAServerObject.getSecurityName(LTPAServerObject.java:1421)
at com.ibm.ws.security.ltpa.LTPAServerObject.validate(LTPAServerObject.java:1259)
at com.ibm.ws.security.server.lm.ltpaLoginModule.login(ltpaLoginModule.java:599)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:79)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:618)
at javax.security.auth.login.LoginContext.invoke(LoginContext.java:795)
at javax.security.auth.login.LoginContext.access$000(LoginContext.java:209)
at javax.security.auth.login.LoginContext$4.run(LoginContext.java:709)
at java.security.AccessController.doPrivileged(AccessController.java:246)
at javax.security.auth.login.LoginContext.invokePriv(LoginContext.java:706)
at javax.security.auth.login.LoginContext.login(LoginContext.java:603)
at com.ibm.ws.security.auth.JaasLoginHelper.jaas_login(JaasLoginHelper.java:289)
at com.ibm.ws.security.auth.ContextManagerImpl.login(ContextManagerImpl.java:2874)
at com.ibm.ws.security.auth.ContextManagerImpl.login(ContextManagerImpl.java:2737)
at com.ibm.ws.security.web.WebAuthenticator.validate(WebAuthenticator.java:1640)
at com.ibm.ws.security.web.WebAuthenticator.validateCookie(WebAuthenticator.java:599)
at com.ibm.ws.security.web.WebAuthenticator.handleSSO(WebAuthenticator.java:520)
at com.ibm.ws.security.web.WebAuthenticator.handleCustomLogin(WebAuthenticator.java:743)
at com.ibm.ws.security.web.WebAuthenticator.authenticate(WebAuthenticator.java:1497)
at com.ibm.ws.security.web.WebAuthenticator.authenticate(WebAuthenticator.java:1373)
at com.ibm.ws.security.web.WebCollaborator.authorize(WebCollaborator.java:670)
at com.ibm.ws.security.web.EJSWebCollaborator.preInvoke(EJSWebCollaborator.java:318)
at com.ibm.ws.webcontainer.webapp.WebAppSecurityCollaborator.preInvoke(WebAppSecurityCollaborator.java:141)
at com.ibm.ws.wswebcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:486)
at com.ibm.ws.webcontainer.servlet.CacheServletWrapper.handleRequest(CacheServletWrapper.java:90)
at com.ibm.ws.webcontainer.WebContainer.handleRequest(WebContainer.java:751)
at com.ibm.ws.wswebcontainer.WebContainer.handleRequest(WebContainer.java:1478)
at com.ibm.ws.webcontainer.channel.WCChannelLink.ready(WCChannelLink.java:125)
at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleDiscrimination(HttpInboundLink.java:458)
at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleNewInformation(HttpInboundLink.java:387)
at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.ready(HttpInboundLink.java:267)
at com.ibm.ws.tcp.channel.impl.NewConnectionInitialReadCallback.sendToDiscriminators(NewConnectionInitialReadCallback.java:214)
at com.ibm.ws.tcp.channel.impl.NewConnectionInitialReadCallback.complete(NewConnectionInitialReadCallback.java:113)
at com.ibm.ws.tcp.channel.impl.AioReadCompletionListener.futureCompleted(AioReadCompletionListener.java:165)
at com.ibm.io.async.AbstractAsyncFuture.invokeCallback(AbstractAsyncFuture.java:217)
at com.ibm.io.async.AsyncChannelFuture$1.run(AsyncChannelFuture.java:205)
at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1497)


Diagnostic / Diagnostico:
We found that the old realm name is still in one of the Portal database tables. If we update the realm in the table the exception when the portal starts should be resolved.
Encontramos que el nombre antiguo del realm está aun en una de las tablas de la base de datos del Portal. Si actualizamos el real en la tabla la excepción cuando el porta se inicia debería ser resuelta.
Solution / Solución
1) Login into WCM database.
2) Backup data on RELEASE.VP_DESC table.
db2 connect to RELEASE
db2 "select * from RELEASE.VP_DESC" > RELEASE.VP_DESC.TXT
3) Make change of realm name on security option from WAS 
apiconzldap.apiconz.info:389 -> PortalWcmRealmFederated
4) Stop the portal.
./stopServer.sh WebSphere_Portal -username wpsbind -password password
5) Make update to table.
db2 "update RELEASE.VP_DESC set REALM='apiconzldap.apiconz.info:389' where RELEASE.VP_DESC.REALM='PortalWcmRealmFederated'";  
6) Start the portal.
1) Ingresar a base de datos del WCM.
2) Respaldar datos de la tabla RELEASE.VP_DESC
db2 connect to RELEASE
db2 "select * from RELEASE.VP_DESC" > RELEASE.VP_DESC.TXT
3) Realizar cambio de nombre de Realm en las opciones de Seguridad del WAS.
apiconzldap.apiconz.info:389 -> PortalWcmRealmFederated
4) Bajar el portal.
./stopServer.sh WebSphere_Portal -username wpsbind -password password
5) Realizar actualización de datos en la bd.
db2 "update RELEASE.VP_DESC set REALM='apiconzldap.apiconz.info:389' where RELEASE.VP_DESC.REALM='PortalWcmRealmFederated'";
6) Subir el portal

06 enero 2009

Resolviendo el error "Unsupported major.minor version 49.0"

El día de hoy mientras intentaba correr una pequeña aplicación Java me salió el siguiente error:

Unsupported major.minor version 49.0

Al principio pensé que el error se debía a algun tema de lógica o del servidor, sin embargo, luego supe que este error se debía a que se intentó correr una clase compilada con JDK 1.5 en un ambiente JRE 1.4, el cuál fue el que dió el error. Esto se da por motivo de las nuevas características introducidas en la versión más reciente de Java y que no están presentes en la versión anterior.

Para resolver este error tuve que verificar que versión del compilador se está empleando y cambiarla por la más apropiada (en mi caso la tuve que bajar a 1.4).

Acá les dejo un enlace sobre este tema. Resolving the “Unsupported major.minor version 49.0″ Error