En algunas ocasiones necesitamos forzar el HOST para las conexiones JMX vía RMI de Alfresco.
En la configuración (alfresco-shared.properties) encontramos dos propiedades que son las siguientes:
Pero en realidad hacen referencia a la parte de «virtualización» de servidor de Alfresco y no de los servicios que este proporciona. Para ello hay que recurrir a una propiedad en la llamada a la JVM que es java.rmi.server.hostname
En efecto, si necesitamos forzar una IP determinada de «escucha» para conectar alguna consola tipo jconsole, VisualVM, etc. necesitaremos hacer uso de esta variable.
Lo mejor es ponerla en el script de arranque de Alfresco, por ejemplo en Linux, esta sería una forma:
export JAVA_OPTS=»${JAVA_OPTS} -Dalfresco.home=${ALF_HOME} -Dcom.sun.management.jmxremote -Djava.rmi.server.hostname=${IP_ADDR} -Djava.rmi.server.port=50500″
[…]
Ahora solo queda arrancar y probar que se está listando correctamente el puerto y desde la dirección IP adecuada con:
Y el resultado sería algo así:
tcp 0 0 ::ffff:127.0.0.1:8005 :::* LISTEN 5560/java
tcp 0 0 :::50501 :::* LISTEN 5560/java
tcp 0 0 :::50502 :::* LISTEN 5560/java
tcp 0 0 :::55142 :::* LISTEN 5560/java
tcp 0 0 :::50503 :::* LISTEN 5560/java
tcp 0 0 :::50504 :::* LISTEN 5560/java
tcp 0 0 :::8009 :::* LISTEN 5560/java
tcp 0 0 :::50505 :::* LISTEN 5560/java
tcp 0 0 :::50506 :::* LISTEN 5560/java
tcp 0 0 :::50507 :::* LISTEN 5560/java
tcp 0 0 :::139 :::* LISTEN 5560/java
tcp 0 0 :::50508 :::* LISTEN 5560/java
tcp 0 0 :::53453 :::* LISTEN 5560/java
tcp 0 0 :::8080 :::* LISTEN 5560/java
tcp 0 0 :::41715 :::* LISTEN 5560/java
tcp 0 0 :::38324 :::* LISTEN 5560/java
tcp 0 0 :::445 :::* LISTEN 5560/java
tcp 0 0 ::ffff:127.0.0.1:42540 ::ffff:127.0.0.1:3306 ESTABLISHED 5560/java
tcp 0 0 ::ffff:127.0.0.1:42541 ::ffff:127.0.0.1:3306 ESTABLISHED 5560/java
tcp 0 0 ::ffff:127.0.0.1:42542 ::ffff:127.0.0.1:3306 ESTABLISHED 5560/java
tcp 0 0 ::ffff:127.0.0.1:42543 ::ffff:127.0.0.1:3306 ESTABLISHED 5560/java
tcp 0 0 ::ffff:127.0.0.1:42544 ::ffff:127.0.0.1:3306 ESTABLISHED 5560/java
tcp 0 0 ::ffff:127.0.0.1:42545 ::ffff:127.0.0.1:3306 ESTABLISHED 5560/java
tcp 0 0 ::ffff:127.0.0.1:42546 ::ffff:127.0.0.1:3306 ESTABLISHED 5560/java
tcp 0 0 ::ffff:127.0.0.1:42547 ::ffff:127.0.0.1:3306 ESTABLISHED 5560/java
tcp 0 0 ::ffff:192.168.1.112:50508 ::ffff:192.168.1.103:53427 ESTABLISHED 5560/java
tcp 0 0 ::ffff:192.168.1.112:50508 ::ffff:192.168.1.103:53428 ESTABLISHED 5560/java
udp 0 0 :::137 :::* 5560/java
udp 0 0 :::7500 :::* 5560/java
udp 0 0 :::7500 :::* 5560/java
Buenas,
Has probado que no te falle por una interfaz de red que no sea la de servidor? una sub-interfaz?
en un redhat con la última versión enterpriese obtengo:
ERROR [org.apache.catalina.core.ContainerBase.[jboss.web].[172.172.0.3].[/alfresco]] (main) Exception sending context initialized event to listener instance of class org.alfresco.repo.webdav.WebDAVSessionListener
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'avmRemoteService' defined in class path resource [alfresco/remote-services-context.xml]: Invocation of init method failed; nested exception is java.rmi.server.ExportException: internal error: ObjID already in use
Caused by: java.rmi.server.ExportException: internal error: ObjID already in use
No he conseguido forzarlo. Es muy interesante para aislar varios Alfresco en distintas instancias JBoss.
Generalmente este error de ObjID sale cuando no coinciden el nombre de HOSTNAME con lo configurado en /etc/hosts
Podrías hacer pruebas para que la subinterfaz esté asignada al nombre del HOSTNAME a ver que pasa. Es solo una idea.