Foren

userId de la pagina a la que se accede

Floren Garcia, geändert vor 14 Jahren.

userId de la pagina a la que se accede

Junior Member Beiträge: 28 Beitrittsdatum: 03.06.09 Neueste Beiträge
Buenas estoy intentado crear un portlet que muestre campo personalizados.
Ya obtengo los datos lo que ocurre es que muestra los del usuario conectado ya que el id que le paso es ese y la intención es que muestre el usuario de la pagina a la que se accede.

Si lo pongo manual funciona como podéis ver en el caso de Aficiones


<%long userId = com.liferay.portal.util.PortalUtil.getUserId(request);%>
	
	Aficiones:<liferay-ui:custom-attribute className="<%= User.class.getName() %>" classPK="11109" name="Aficiones" /><br>
	Grupos Musicales, Discos: <liferay-ui:custom-attribute className="<%= User.class.getName() %>" classPK="<%= userId %>" name="Grupos Musicales, Discos" /><br>
	Libros, Escritores, Géneros: <liferay-ui:custom-attribute className="<%= User.class.getName() %>" classPK="<%= userId %>" name="Libros, Escritores, Géneros" /><br>
	Citas Famosas: <liferay-ui:custom-attribute className="<%= User.class.getName() %>" classPK="<%= userId %>" name="Citas Famosas" /><br>
	Información Personal: <liferay-ui:custom-attribute className="<%= User.class.getName() %>" classPK="<%= userId %>" name="Información Personal" /><br>


Como obtengo el id del usuario de la pagina a la que accedo¿?¿?.
Me refiero que por ejemplo el usuario usu1 acede a la pagina principal del usu2. Pues quiero obtener el id del usu2

gracias.
thumbnail
Juan Fernández, geändert vor 14 Jahren.

RE: userId de la pagina a la que se accede

Liferay Legend Beiträge: 1261 Beitrittsdatum: 02.10.08 Neueste Beiträge
Floren Garcia:

Como obtengo el id del usuario de la pagina a la que accedo

Hola Floren:
¿a qué te refieres con esta frase? En una página en concreto puedes saber el id del usuario que la visita, pero no entiendo la pregunta si te refieres a otra cosa.
Floren Garcia, geändert vor 14 Jahren.

RE: userId de la pagina a la que se accede

Junior Member Beiträge: 28 Beitrittsdatum: 03.06.09 Neueste Beiträge
Me refiero que por ejemplo el usuario usu1 acede a la pagina principal del usu2. Pues quiero obtener el id del usu2
thumbnail
Juan Fernández, geändert vor 14 Jahren.

RE: userId de la pagina a la que se accede

Liferay Legend Beiträge: 1261 Beitrittsdatum: 02.10.08 Neueste Beiträge
El creatorUserId de la comunidad es el identificador del usuario que la creó, si no es una comunidad privada, y el userId del dueño de la comunidad si es una comunidad privada de usuario, así que con esto ya puedes obtener lo que te interesa.
Floren Garcia, geändert vor 14 Jahren.

RE: userId de la pagina a la que se accede

Junior Member Beiträge: 28 Beitrittsdatum: 03.06.09 Neueste Beiträge
Juan Fernández:
El creatorUserId de la comunidad es el identificador del usuario que la creó, si no es una comunidad privada, y el userId del dueño de la comunidad si es una comunidad privada de usuario, así que con esto ya puedes obtener lo que te interesa.



No te he entendido muy bien puedes concretarmelo mas, un ejemplo. Es una comunidad publica.
¿ Toda comunidad la crea el usuario de la comunidad ?
thumbnail
Juan Fernández, geändert vor 14 Jahren.

RE: userId de la pagina a la que se accede

Liferay Legend Beiträge: 1261 Beitrittsdatum: 02.10.08 Neueste Beiträge
Así es.
Si un usuario crea una comunidad cualquiera (no una comunidad de usuario, sino una comunidad normal, que no sea el espacio de ningún usuario en concreto), él será el creador, pero si hablamos de la comunidad de un usuario X, sea quien sea el que la creó, el creatorId será el userId de X.
Así es como puedes resolver tu problema.
Échale un vistazo a la tabla Group y lo entenderás
Un saludo
Floren Garcia, geändert vor 14 Jahren.

RE: userId de la pagina a la que se accede

Junior Member Beiträge: 28 Beitrittsdatum: 03.06.09 Neueste Beiträge
buenas, yo lo intento obtenerlo de alguna de estas dos maneras, pero no lo consigo
la primera no obtendo nada, y la segunda me da error en el eclipse.
tengo q importar algo¿?

<%String creatorUserId = ParamUtil.getString(request, "creatorUserId");%>


<%User d = UserLocalServiceUtil.getUser(Group.getCreatorUserId());%>

Me podrias poner el codigo para obtenerlo.
Gracias
thumbnail
Jorge Ferrer, geändert vor 14 Jahren.

RE: userId de la pagina a la que se accede

Liferay Legend Beiträge: 2871 Beitrittsdatum: 31.08.06 Neueste Beiträge
Hola Floren,

Si te he entendido bien lo que quieres es un portlet que en el caso de que se ponga en las páginas públicas de la comunidad personal de un usuario te muestre los datos de dicho usuario. La forma más sencilla de averiguar cual es dicho usuario es a través del objeto group que representa la comunidad actual. En concreto:


Group group = themeDisplay.getLayout().getGroup();
if (group.isUser()) { // Primero confirmo que esta es una comunidad personal
   User pageUser = group.getUser();
   //...
}


El objeto themeDisplay es un objeto implícito si has usado <theme:defineObjects/>. También está como atributo de la request con el nombre WebKeys.THEME_DISPLAY.

También deberías pensar qué hará el portlet cuando se pone en una página que no es de usuario.
Floren Garcia, geändert vor 14 Jahren.

RE: userId de la pagina a la que se accede

Junior Member Beiträge: 28 Beitrittsdatum: 03.06.09 Neueste Beiträge
Muchas gracias era justo lo que necesitaba.
Ahora estoy con otra cosa muy interesante, te paso el link Portlet pasar Portal a HTML estatico