Foros del Web » Programación para mayores de 30 ;) » Java »

problema enviando datos a session beans en JSF

Estas en el tema de problema enviando datos a session beans en JSF en el foro de Java en Foros del Web. hola a todos llevo dos días intentando enviar datos a un session beans al hacer click en un h:commandbutton, pero no lo consiguo: Código PHP: ...
  #1 (permalink)  
Antiguo 21/05/2012, 22:50
Avatar de calichecal  
Fecha de Ingreso: junio-2009
Ubicación: Colombia
Mensajes: 288
Antigüedad: 14 años, 10 meses
Puntos: 12
problema enviando datos a session beans en JSF

hola a todos llevo dos días intentando enviar datos a un session beans al hacer click en un h:commandbutton, pero no lo consiguo:

Código PHP:
<h:form>
                            <
p:panel>  
                                <
h:dataTable id="Comentarios1" value="#{sesionbeans.getListaComentarios(sesionbeans.mensaje1.idMensaje)}" var="comentarioactual">
                                <
h:column>
                                    <
h:outputText value="#{comentarioactual.comentario}" />
                                </
h:column>
                            </
h:dataTable>
                             </
p:panel>
                             
                            <
div  class="capa_comentar"
                            
                            <
p:inplace id="inplacecomentario1" >  
                                <
h:outputText value="Escriba su comentario"/><br/>
                                <
h:inputTextarea  id="comentario1" value="" cols="90" required="true" /> 
                                <
h:commandButton  id="Button_comentarioMensaje1" value="enviar"   actionListener="#{sesionbeans.crearComentario}" >
                                    <
f:attribute name="idmensaje" value="#{sesionbeans.mensaje1.idMensaje}"/>
                                    <
f:ajax render="Comentarios1" />
                                 </
h:commandButton>
                            </
p:inplace>
                              </
div
                            </
h:form
no me funcionaba de ninguna manera

-primero pense que al insertar texto en el inputextarea este se sincronizaría con un atributo en el session beans:

Código PHP:
<h:commandButton  id="Button_comentarioMensaje1" value="#{sesionbeans.comentario}" 
pero nada, cuando le daba enviar con el commanbutton, se ejecutaba el metodo y dicho atributo en el sesions estaba en null :/

e intentado con action , action listener, y tratando de recuperar el valor del campo de texto de muchas formas pero nada me funciona.

He leido mucho y lo ultimo que hize fueron estos metodos en el sesion beans para llamar con el actionlistener, pero tampoco me funcionaron:

Código PHP:

private String getExtraer(UIComponent component,String parametro) {
    
Map<StringObjectattrs component.getAttributes();
    return (String) 
attrs.get(parametro);
    }
    
    private 
String getExtraerComentario(UIComponent component) {
    
        
UIComponent num1Component component.getParent().findComponent("comentario1");
        
Object num1Value = ((EditableValueHolder)num1Component).getValue();
    
        return 
String.valueOf(num1Value);
    }
    
     public 
void crearComentario(ActionEvent event){
        
            
FacesContext context FacesContext.getCurrentInstance();
            
UIComponent component=event.getComponent();
            
            
String idMensaje=this.getExtraer(component"idmensaje");
            
String comentario=this.getExtraerComentario(component);
            
            
//...por aca hago un entity bean y guardo etc... 
cuando voy a llamar al metodo " crearComentario" que supuestamente recibe un "Actionevent" implicitamente ni siquiera me lo reconoce jsf..

agradexco sus recomendaciones...
__________________
Hay una fuerza motriz más poderosa que el vapor, la electricidad y la energía atómica: la voluntad. -Einstein-

Etiquetas: jsp
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 01:51.