留言板

Compartir propiedades para la configuración entre portlets

thumbnail
Xavier Moreno,修改在15 年前。

Compartir propiedades para la configuración entre portlets

Junior Member 帖子: 29 加入日期: 09-3-24 最近的帖子
Buenas, tengo una duda a ver si me la podéis aclarar :-). Resulta que tengo varios portlets, los cuales tienen definidos el mismo DataSource. Me gustaría que todos los parámetros de configuración se obtuviesen, por ejemplo, en un archivo properties que fuese accesible por todos los portlets (ya que comparten en este caso los mismos datos y no veo la necesidad de ir repitiendo código).... ¿cuál sería la mejor forma?, a lo que me refiero es algo como:

archivo.properties
#Conexion para los portlets
portlet.jdbc.driver=oracle.jdbc.driver.OracleDriver
portlet.jdbc.url=jdbc:oracle:thin:@XX.XX.XX.XXX:YYYY:od10
portlet.jdbc.user=xxxx
portlet.jdbc.password=xxxx


spring-jpa.xml del Portlet 1
<bean id="myDataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
<property name="driverClassName">
<value>${portlet.jdbc.driver}</value>
</property>

<property name="url">
<value>${portlet.jdbc.url}</value>
</property>

<property name="username">
<value>${portlet.jdbc.user}</value>
</property>

<property name="password">
<value>${portlet.jdbc.password}</value>
</property>
</bean>


spring-jpa.xml del Portlet 2
<bean id="myDataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
<property name="driverClassName">
<value>${portlet.jdbc.driver}</value>
</property>

<property name="url">
<value>${portlet.jdbc.url}</value>
</property>

<property name="username">
<value>${portlet.jdbc.user}</value>
</property>

<property name="password">
<value>${portlet.jdbc.password}</value>
</property>
</bean>


.
.
.


Muchas gracias por adelantado
thumbnail
Julio Camarero,修改在15 年前。

RE: Compartir propiedades para la configuración entre portlets

Liferay Legend 帖子: 1668 加入日期: 08-7-15 最近的帖子
Hola Xavier,

probablemente estos parámetros sean los mismos que tengas en el portal-ext.properties, no?

por qué no los coges de alli?

un saludo!

Julio Camarero
Liferay España
thumbnail
Xavier Moreno,修改在15 年前。

RE: Compartir propiedades para la configuración entre portlets

Junior Member 帖子: 29 加入日期: 09-3-24 最近的帖子
Buenas Julio, y gracias por responder :-)

Al ser una fuente de datos distinta a la de Liferay, había pensado en usar también el portal-ext.properties para añadir estas nuevas propiedades, pero no sé porque motivo dentro del xml del portlet no me reconoce la propiedad. A lo mejor es que no lo estoy haciendo bien, que esa es otra, pero vamos ¿de qué forma se pueden invocar los valores de las propiedades del portal-ext.properties dentro de la configuración spring-jpa.xml de un portlet?

Muchas gracias
thumbnail
Julio Camarero,修改在15 年前。

RE: Compartir propiedades para la configuración entre portlets

Liferay Legend 帖子: 1668 加入日期: 08-7-15 最近的帖子
Hola Xavier,

normalmente en Liferay lo hacemos así:

Un ejemplo:

GetterUtil.getBoolean(PortletProps.get("validation.script.enabled"))

La clase GetterUtil también tiene getInteger, getString... y entre comillas le pones la propiedad que quieres. Tienes muchos más ejemplos en el código fuente de Liferay, te recomiendo que le eches un ojo a cualquier portlet que use propiedades para qeu lo veas.

un saludo!

Julio Camarero
Liferay España
thumbnail
Xavier Moreno,修改在15 年前。

RE: Compartir propiedades para la configuración entre portlets

Junior Member 帖子: 29 加入日期: 09-3-24 最近的帖子
Gracias Julio, pero mi problema viene en como usarlo dentro de los xml de configuración, como por ejemplo en un spring-jpa.xml, vamos como en el ejemplo que puse arriba.

Muchas gracias por todo