Configuración de JBoss Mail

From OpenKM Documentation
Revision as of 19:28, 14 October 2011 by Ana.rincon.sap (talk | contribs) (Created page with '{{DISPLAYTITLE:Configuración de JBoss Mail}} OpenKM es una aplicación J2EE desplegados en el servidor de aplicaciones JBoss. Algunos parámetros de configuración por defecto …')

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search


OpenKM es una aplicación J2EE desplegados en el servidor de aplicaciones JBoss. Algunos parámetros de configuración por defecto que se ajustan a las necesidades comunes de los usuarios, pero los demás depende de la configuración específica del usuario.


Nota clasica.png Para problemas específicos de JBoss, visite http://jboss.org/community/docs/DOC-10376.

A veces en OpenKM se envian correos o notificaciones a los usuarios (si se ha suscrito a un documento o una carpeta, y alguno de ellos sufren un cambio, por ejemplo) debe comprobar que la configuración del correo es correcta. Para verificar se edita este archivo $JBOSS_HOME/server/default/deploy/mail-service.xml:

$ vim $JBOSS_HOME/server/default/deploy/mail-service.xml

Observará algo parecido a lo siguiente:

<mbean code="org.jboss.mail.MailService" name="jboss:service=OpenKM">
  <attribute name="JNDIName">java:/mail/OpenKM</attribute>
  <attribute name="User">nobody</attribute>
  <attribute name="Password">password</attribute>
  <attribute name="Configuration">
    <!-- A test configuration -->
    <configuration>
      <!-- Change to your mail server prototocol -->
      <property name="mail.store.protocol" value="pop3"/>
      <property name="mail.transport.protocol" value="smtp"/>
      <!-- Change to the user who will receive mail  -->
      <property name="mail.user" value="nobody"/>
      <!-- Change to the mail server -->
      <property name="mail.pop3.host" value="pop3.your-domain.com "/>
      <!-- Change to the SMTP gateway server -->
      <property name="mail.smtp.host" value="smtp.your-domain.com "/>
      <!-- The mail server port -->
      <property name="mail.smtp.port" value="25"/>
      <!-- Change to the address mail will be from -->
      <property name="mail.from" value="noreply@your-domain.com"/>
      <!-- Enable debugging output from the javamail classes -->
      <property name="mail.debug" value="false"/>
    </configuration>
  </attribute>
  <depends>jboss:service=Naming</depends>
</mbean>

Normalmente solo debe configurar los parámetros siguientes:

  • mail.smtp.host: este es el host donde se encuentra el servidor de correo. Puede ser localhost si usted tiene un servidor de correo local instalado (al igual que Postfix).
  • mail.from: todos los correos enviados por OpenKM seran a nombre de este e-mail. Puede utilizar la siguiente dirección noreply@your-domain.com.

Pero todo depende de la configuración que usted desee. Si se presenta algún incoveniente, cambiar el parámetro mail.debug a true y revisar el log del JBoss.

$ tail -f $JBOSS_HOME/server/default/log/server.log

Para mayor información, revise http://community.jboss.org/wiki/JavaMail.

Configuración por Autentificación SMTP

Cuando se quiere utilizar un servidor SMTP con autentificación debemos hacer algunos cambios en el archivo mail-service.xml (utilice un ejemplo del servidor SMTP gmail.com).

<mbean code="org.jboss.mail.MailService" name="jboss:service=OpenKM">
  <attribute name="JNDIName">java:/mail/OpenKM</attribute>
  <attribute name="User">USUARIO@gmail.com</attribute>
  <attribute name="Password">PASSWORD</attribute>
  <attribute name="Configuration">
    <!-- A test configuration -->
    <configuration>
      <!-- Change to your mail server prototocol -->
      <property name="mail.store.protocol" value="pop3"/>
      <property name="mail.transport.protocol" value="smtp"/>

      <!-- Change to the user who will receive mail  -->
      <property name="mail.user" value="USUARIO@gmail.com"/>

      <!-- Change to the mail server  -->
      <property name="mail.pop3.host" value="pop.gmail.com"/>

      <!-- Change to the SMTP gateway server -->
      <property name="mail.smtp.host" value="smtp.gmail.com"/>
      <property name="mail.smtp.starttls.enable" value="true" />
      <property name="mail.smtp.socketFactory.class" value="javax.net.ssl.SSLSocketFactory" />

      <!-- The mail server port -->
      <property name="mail.smtp.port" value="465"/>
      <property name="mail.smtp.socketFactory.port" value="465" />

      <!-- Change to the address mail will be from  -->
      <property name="mail.from" value="USUARIO@gmail.com"/>
      <property name="mail.smtp.user" value="USUARIO@gmail.com"/>
      <property name="mail.smtp.password" value="PASSWORD"/>
      <property name="mail.smtp.auth" value="true"/>

      <!-- Enable debugging output from the javamail classes -->
      <property name="mail.debug" value="false"/>
    </configuration>
  </attribute>
  <depends>jboss:service=Naming</depends>
</mbean>

Agregar un certificado PKI

Algunos servidores de correo necesitan que les sean instalados certificados PKI en el servidor, si no lo tiene instalado observara un error como este:

ERROR [STDERR] javax.mail.MessagingException: Exception reading response;
nested exception is:
javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: PKIX path building failed:
sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target

En este caso debe instalar el certificado.

java InstallCert serverName
  • Seleccione la opción '1', se genera un archivo que se llama jssecacerts
  • Sobreescriba jssecacerts en /usr/lib/jvm/java-6-sun/jre/lib/security/cacerts (la ruta dependera de su SO y versión del Java JDK)
  • Reinicie el JBoss para que los cambios se guarden

Para mayor información de la instalación del certificado, revisar:

Para mayor informacion: