Here I maybe have an explanation of why there is no action : I use a utility
class to debug parameters and attributes. Here is my output when I click on
the OK button:

/IntoServicesTobagoWeb/person/person.jsf
Request Parameters:
'jsf_tree' : '4'
'jsf_viewid' : '/person/person.jsp'
* 'page::form-action' : ''*
'page::form-clientDimension' : '1891;1039'
'page:personForm:details:_idJsp7::activeIndex' : '0'
'page:personForm:details:adressesSheet:0:personAdressList:country' : ''
'page:personForm:details:adressesSheet:0:personAdressList:number' : '0'
'page:personForm:details:adressesSheet:0:personAdressList:specifier' : ''
'page:personForm:details:adressesSheet:0:personAdressList:street' : 'rue de
la liberation'
'page:personForm:details:adressesSheet:0:personAdressList:town' : 'Neuilly
sur marne'
'page:personForm:details:adressesSheet:0:personAdressList:zipCode' : '0'
'page:personForm:details:adressesSheet:1:personAdressList:country' : ''
'page:personForm:details:adressesSheet:1:personAdressList:number' : '2'
'page:personForm:details:adressesSheet:1:personAdressList:specifier' : ''
'page:personForm:details:adressesSheet:1:personAdressList:street' : 'allee
pierre laplace'
'page:personForm:details:adressesSheet:1:personAdressList:town' : 'Rosny
sous bois'
'page:personForm:details:adressesSheet:1:personAdressList:zipCode' : '93110'
'page:personForm:details:adressesSheet::scrollPosition' : ''
'page:personForm:details:adressesSheet::selected' : ','
'page:personForm:details:adressesSheet::widths' : ''
* 'page:personForm:details:newAdressPopup:_idJsp52' : 'Ok'
'page:personForm:details:newAdressPopup:_idJsp54' : 'Annuler'
'page:personForm:details:newAdressPopup:newAdress:country' : 'qsfsfsqfd'
'page:personForm:details:newAdressPopup:newAdress:number' : '0'
'page:personForm:details:newAdressPopup:newAdress:specifier' : 'qds'
'page:personForm:details:newAdressPopup:newAdress:street' : 'qdqsdq'
'page:personForm:details:newAdressPopup:newAdress:town' : 'qsdqdqssdqs'*
*...*
**
*Note: for persons who are interested in getting this simple but useful
class I join it it is always better than calling System.out.println()...*
package fr.into.common.server;

import java.util.Collections;
import java.util.Enumeration;
import java.util.List;
import java.util.logging.Logger;

import javax.servlet.ServletRequest;
import javax.servlet.http.HttpSession;

import fr.into.common.logging.LoggerFactory;

/**
 * 
 * @author Zied Hamdi for Into © corporation
 *
 */
public class ServerUtil {
  private static Logger log = LoggerFactory.getLogger( ServerUtil.class );

  public ServerUtil() {
    super();
  }

  public static String getParametersAndValues( ServletRequest request ) {
    Enumeration parameters = sort( request.getParameterNames() );
    Enumeration attributes = sort( request.getAttributeNames() );
    StringBuffer toReturn = null;
    if( parameters != null ) {
      toReturn = new StringBuffer( "Request Parameters:\n" );
      formatParameters( request, parameters, toReturn, true );
    }
    if( attributes != null ) {
      if( toReturn == null )
        toReturn = new StringBuffer();
      toReturn.append( "\nRequest Attributes:\n" );
      formatParameters( request, attributes, toReturn, false );
    }
    return ( toReturn != null ) ? toReturn.toString() : null;
  }

  public static String getParametersAndValues( HttpSession session ) {
    Enumeration attributes = session.getAttributeNames();
    StringBuffer toReturn = null;
    if( attributes != null ) {
      toReturn = new StringBuffer();
      toReturn.append( "\nSession Attributes:\n" );
      formatSessionParameters( session, attributes, toReturn );
    }
    return ( toReturn != null ) ? toReturn.toString() : null;
  }

  private static void formatParameters( ServletRequest request, Enumeration 
parameters, StringBuffer buffer, boolean isParameter ) {
    while( parameters.hasMoreElements() ) {
      String element = (String)parameters.nextElement();
      Object value = ( ( isParameter ) ? request.getParameter( element ) : 
request.getAttribute( element ) );
      buffer.append( "\t'" + element + "'\t:\t'" + value + "'\n" );
    }
  }

  private static void formatSessionParameters( HttpSession session, Enumeration 
parameters, StringBuffer buffer ) {
    while( parameters.hasMoreElements() ) {
      String element = (String)parameters.nextElement();
      Object value = ( session.getAttribute( element ) );
      buffer.append( "\t'" + element + "'\t:\t'" + value + "'\n" );
    }
  }

  private static Enumeration sort( Enumeration enumeration ) {
    List toReturn = Collections.list( enumeration );
    Collections.sort( toReturn );
    return Collections.enumeration( toReturn );
  }

}

Reply via email to