IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Tomcat et TomEE Java Discussion :

[Struts][Tomcat ] HTTP 500 - BeanUtils.populate (Eclipse)


Sujet :

Tomcat et TomEE Java

  1. #1
    En attente de confirmation mail
    Inscrit en
    Mars 2004
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : Mars 2004
    Messages : 8
    Points : 6
    Points
    6
    Par défaut [Struts][Tomcat ] HTTP 500 - BeanUtils.populate (Eclipse)
    J’utilise Eclipse 2.1.2 avec Tomcat 4.1.18 et Struts 1.1 et les plugin easystruts 0.6.4 et Sysdeo 2.2.0. J’essai simplement de tester la mécanique de struts. Une page JSP affiche un formulaire. Lorsque que je soumets le formulaire, une classe action envoie une autre JSP. Un bean ActionForm contient les données du formulaire saisi. Bref tout ce qu'il y a de simple.

    Le démarrage de Tomcat dans Eclipse donne la log suivante :
    6 avr. 2004 15:49:05 org.apache.commons.modeler.Registry loadRegistry
    INFO: Loading registry information
    6 avr. 2004 15:49:05 org.apache.commons.modeler.Registry getRegistry
    INFO: Creating new Registry instance
    6 avr. 2004 15:49:06 org.apache.commons.modeler.Registry getServer
    INFO: Creating MBeanServer
    6 avr. 2004 15:49:08 org.apache.coyote.http11.Http11Protocol init
    INFO: Initialisation de Coyote HTTP/1.1 sur le port 8080

    Démarrage du service Tomcat-Standalone
    Apache Tomcat/4.1.18
    6 avr. 2004 15:49:12 org.apache.struts.util.PropertyMessageResources <init>
    INFO: Initializing, config='org.apache.struts.util.LocalStrings', returnNull=true
    6 avr. 2004 15:49:12 org.apache.struts.util.PropertyMessageResources <init>
    INFO: Initializing, config='org.apache.struts.action.ActionResources', returnNull=true
    6 avr. 2004 15:49:12 org.apache.commons.beanutils.MethodUtils getMatchingAccessibleMethod
    WARNING: Cannot use JVM pre-1.4 access bug workaround die to restrictive security manager.
    6 avr. 2004 15:49:12 org.apache.struts.util.PropertyMessageResources <init>
    INFO: Initializing, config='com.ciel.struts.ApplicationResources', returnNull=true
    6 avr. 2004 15:49:17 org.apache.coyote.http11.Http11Protocol start
    INFO: Démarrage de Coyote HTTP/1.1 sur le port 8080
    6 avr. 2004 15:49:17 org.apache.jk.common.ChannelSocket init
    INFO: JK2: ajp13 listening on /0.0.0.0:8009
    6 avr. 2004 15:49:17 org.apache.jk.server.JkMain start
    INFO: Jk running ID=0 time=0/140 config=C:\Tomcat4118\conf\jk2.properties


    La page JSP s’affiche bien.
    Lorsque j’envoie, j’ai les messages suivants :
    description Le serveur a recontrer une erreur interne () qui l'a empèché de satisfaire la requête.
    exception javax.servlet.ServletException: BeanUtils.populate
    org.apache.struts.util.RequestUtils.populate(RequestUtils.java:1254)
    org.apache.struts.action.RequestProcessor.processPopulate(RequestProcessor.java:821)
    org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:254)
    org.apache.struts.action.ActionServlet.process(ActionServlet.java:1482)
    org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:525)
    etc…

    cause mère
    java.security.AccessControlException: access denied (java.lang.RuntimePermission accessDeclaredMembers)
    java.security.AccessControlContext.checkPermission(Unknown Source)
    java.security.AccessController.checkPermission(Unknown Source)
    java.lang.SecurityManager.checkPermission(Unknown Source)
    java.lang.SecurityManager.checkMemberAccess(Unknown Source)
    java.lang.Class.checkMemberAccess(Unknown Source)
    etc …


    Quelqu’un a t-il déjà eu ce problème ?
    Y a-t-il un rapport avec le message Cannot use JVM pre-1.4 access bug … dans la log Tomcat ?




    [Modéré par Didier]
    Ajout de tag dans le titre
    Lire les règles du forum : Règles du forum Java

  2. #2
    Rédacteur
    Avatar de lunatix
    Homme Profil pro
    Architecte technique
    Inscrit en
    Novembre 2002
    Messages
    1 960
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Architecte technique

    Informations forums :
    Inscription : Novembre 2002
    Messages : 1 960
    Points : 3 736
    Points
    3 736
    Par défaut
    tu es sur que ton form herite bien de ActionForm ?

  3. #3
    En attente de confirmation mail
    Inscrit en
    Mars 2004
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : Mars 2004
    Messages : 8
    Points : 6
    Points
    6
    Par défaut
    Oui : Voici le Bean Form :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    public class LoginForm extends ActionForm {
     
    	private String password;
    	private String username;
     
    	/** 
             * Method validate
             * @param ActionMapping mapping
             * @param HttpServletRequest request
             * @return ActionErrors
             */
    	public ActionErrors validate(
    		ActionMapping mapping,
    		HttpServletRequest request) {
    		throw new UnsupportedOperationException("Generated method 'validate(...)' not implemented.");
    	}
     
    	public String getPassword() {
    		return password;
    	}
    	public void setPassword(String password) {
    		this.password = password;
    	}
     
    	public String getUsername() {
    		return username;
    	}
    	public void setUsername(String username) {
    		this.username = username;
    	}
    }
    le fichier Struts Config.xml :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
     <!-- ========== Form Bean Definitions ================================== -->
        <form-beans>
            <form-bean name="LoginForm" type="com.ciel.struts.LoginForm">
                <form-property name="password" type="java.lang.String" />
                <form-property name="username" type="java.lang.String" />
            </form-bean>
         </form-beans>
        <!-- ========== Global Exception Definitions ============================== -->
        <global-exceptions />
         <!-- ========== Global Forward Definitions =============================== -->
        <global-forwards>
            <forward name="welcome" path="/login.jsp" redirect="true" />
        </global-forwards>
     
        <!-- ========== Action Mapping Definitions =============================== -->
        <action-mappings>
            <action path="/login" attribute="LoginForm" name="LoginForm" input="/login.jsp" type="com.ciel.struts.LoginAction" scope="request">
                <forward name="success" path="/victoire.jsp" redirect="true" />
            </action>
         </action-mappings>
    La classe Action :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    public class LoginAction extends Action {
    	public ActionForward execute(
    		ActionMapping mapping,
    		ActionForm form,
    		HttpServletRequest request,
    		HttpServletResponse response)
    		throws Exception {
    		LoginForm loginForm = (LoginForm) form;
    		String username = loginForm.getUsername();
    		String password = loginForm.getPassword();
    // le bean n'est pas exploité exprés ...
    		String target = "welcome";
     
    		return (mapping.findForward(target));
    	}
    }
    Le fichier web.xml :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/j2ee/dtds/web-app_2_3.dtd">
    <web-app>
        <servlet>
            <servlet-name>action</servlet-name>
            <servlet-class>org.apache.struts.action.ActionServlet</servlet-class>
            <init-param>
                <param-name>config</param-name>
                <param-value>/WEB-INF/struts-config.xml</param-value>
            </init-param>
            <init-param>
                <param-name>debug</param-name>
                <param-value>3</param-value>
            </init-param>
            <init-param>
                <param-name>detail</param-name>
                <param-value>3</param-value>
            </init-param>
            <load-on-startup>1</load-on-startup>
        </servlet>
        <servlet-mapping>
            <servlet-name>action</servlet-name>
            <url-pattern>*.do</url-pattern>
        </servlet-mapping>
    </web-app>


    [Modéré par Braim ]
    - BALISE CODES
    - La prochaine fois, essayer de respecter les Règles des forums Java
    Merci


  4. #4
    En attente de confirmation mail
    Inscrit en
    Mars 2004
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : Mars 2004
    Messages : 8
    Points : 6
    Points
    6
    Par défaut
    Merci de s'intéresser à mon cas. Je désespère depuis des lustres. Je fouille les livres et les forums mais je ne touve jamais MA réponse.
    Voici le fchier Login.jsp. La partie formulaire est en gras.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
     
    <%@ taglib uri="/WEB-INF/struts-bean.tld" prefix="bean"%> 
    <%@ taglib uri="/WEB-INF/struts-html.tld" prefix="html"%> 
    <html:html> 
    <head>
    <meta name = "Generator" content = "Easy Struts Xslt generator for Eclipse (http://easystruts.sf.net).">
     
    </head>
    <body  background="/Ciel/Image_Montagne.jpg">
    <table border="0" cellpadding="0" cellspacing="0" style="border-collapse: collapse" bordercolor="#111111" width="100%" id="AutoNumber1" height="94">
      <tr>
        <td width="100%" height="94" valign=top>
        <p align="center">
        <html:img src="/Ciel/pjfly.gif" align="left" width="100" height="60"/>
        <font face="Typewriter" size="7" color="#0099CC">
        	<span style="background-color: #003300">
       		les photos du ciel 
       		</span>
        </font>
     	</td>
      </tr>
    </table>
    <table border="1" cellpadding="0" cellspacing="0" style="border-collapse: collapse" bordercolor="#111111" width="100%" id="AutoNumber2" height="544">
      <tr>
        <td width="17%" height="544" valign="top">
       	<html:errors/>    
    [b]	<html:form action="/login.do">
    		<table bgcolor="#000000">
    		<tr>
    			<td>
           	 	<p align="right">
            	<font color="#0099CC" face="Typewriter">
    			<bean:message key="Login.Pseudo"/>
    			</td><td>
    			<html:text property="username"/><html:errors property="username"/>
    			</td>	
    		</tr>
    		<tr>
    			<td>
           	 	<p align="right">
            	<font color="#0099CC" face="Typewriter">
            	<bean:message key="Login.Pwd"/>
            	</td><td>
          <html:password property="password"/><html:errors property="password"/></br>
    			</td>
    		</tr>
    		<tr>
    			<td colspan="2">
           		<p align="center">
    			<button name="B2" style="color: #0099CC; font-family: Typewriter; border: 1px ridge #000000; background-color: #000000" type="submit">
            	<font size="3">Connexion</font></button>
           		</td>
       	 	</tr>
       	 	</table> 
        </html:form>[/b]
       	<td width="83%" height="544" bgcolor="#000000"></td>
      </tr>
    </table>
    </body>
    </html:html>
    J'ai supprimé les property du bean dans le Struts-config.xml. En vain ...




    [Modéré par Braim ]
    - LES BALISES CODE ca existe
    - La prochaine fois, essayer de respecter les Règles des forums Java
    Merci


  5. #5
    Membre averti
    Inscrit en
    Mars 2004
    Messages
    377
    Détails du profil
    Informations forums :
    Inscription : Mars 2004
    Messages : 377
    Points : 356
    Points
    356
    Par défaut
    Essaie çà :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <html:form action="login">
    plutot que :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <html:form action="/login.do">
    Pense à mettre les tags codes, çà sera plus clair pour nous.

  6. #6
    Membre averti
    Avatar de knotty
    Inscrit en
    Mars 2002
    Messages
    126
    Détails du profil
    Informations forums :
    Inscription : Mars 2002
    Messages : 126
    Points : 391
    Points
    391
    Par défaut
    Ca a l'air d'etre un probleme que d'autres on eu, ce qui me taquine, c'est le securityException.

    En tapant ca dans google:
    struts "java.lang.RuntimePermission accessDeclaredMembers"

    J'ai pleins de liens.

    En particulier ici:
    http://forum.java.sun.com/thread.jsp...essage=1415396

    Es-tu dans ce cas la? (jdk1.3, avec struts beta2)
    Essaie les soluces proposees.

    Bon courage
    Christophe Ludet
    Testez vos connaissances Java - http://knotty.developpez.com
    Donner des ailes a votre application (J2EE patterns) - http://knotty.developpez.com/j2ee

  7. #7
    En attente de confirmation mail
    Inscrit en
    Mars 2004
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : Mars 2004
    Messages : 8
    Points : 6
    Points
    6
    Par défaut
    J'ai testé la modification dans la jsp. Mais même résultat. J'utilise un JDK 1.4. Si quelqu'un veut le code complet du projet pour tester s'il s'agit d'un problème de code ou de configuration machine, je lui envoie sans problème.
    Je continue à chercher en attendant.

  8. #8
    En attente de confirmation mail
    Inscrit en
    Mars 2004
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : Mars 2004
    Messages : 8
    Points : 6
    Points
    6
    Par défaut Solution
    Voilà ce que j'ai a peu prés compris :

    Les permissions sont gérées dans le fichier {java.home}/lib/security/java.policy. Il essaie d'accéder à ce fichier à chaque appel de servlet. Dans mon cas l'installation du SDK s'est traduit par la création des répertoires C:\j2sdk1.4.2_04 et D:\Program Files\Java\j2re1.4.2_04. Ma variable d'environnement java.home pointait sur C:\j2sdk1.4.2_04. Or le fichier java.policy se trouve dans D:\Program Files\Java\j2re1.4.2_04\lib\security. J'ai donc simplement modifié le contenu de cette variable et il semble que maintenant ça marche .

    Plus d'explications à cette adresse :
    http://up.botik.ru/~vadim/documents/JDCBook/appA.html#AllPermission

    Cela aidera peut-être qqn...
    Merci pour votre aide

  9. #9
    Membre du Club
    Profil pro
    Inscrit en
    Août 2002
    Messages
    255
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2002
    Messages : 255
    Points : 53
    Points
    53
    Par défaut
    salut,

    je bosse sur un projet ou j'ai rencontré ce pb maintes fois. Il semble, comme le message l'indique que ton bean ne soit pas correctement peuplé. Soit tu ne peuples pas (mais tu aurais plutôt un NULLPointerException) , soit le type des données que tu tentes d'affecter à ton bean ne colle pas (et c'est le cas que l'on avait avec ce pb).

    Style ton bean comporte un champ de type int que tu chercher à peupler avec un String (est-ce que tu recuperes les bons types dans ton formulaire ?)...

    Je pense que tu devrais chercher dans ce sens...

    Bon courage
    "Patience et longueur de temps font plus que force ni que rage ..."

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Déploiement Struts erreur HTTP 500
    Par debloc dans le forum Struts 1
    Réponses: 8
    Dernier message: 08/06/2011, 22h44
  2. [Struts 1.3.5] BeanUtils.populate
    Par DomIII dans le forum Struts 1
    Réponses: 17
    Dernier message: 07/12/2010, 10h37
  3. Erreur Http 500 Tomcat/eclipse
    Par yassine_3 dans le forum Servlets/JSP
    Réponses: 6
    Dernier message: 15/07/2010, 16h25
  4. [Eclipse][Struts][Tomcat] Erreur Http 503 La servlet action.
    Par minique dans le forum Servlets/JSP
    Réponses: 8
    Dernier message: 20/09/2004, 17h44
  5. [eclipse][struts][tomcat] Problème d'intégration
    Par Alwin dans le forum Eclipse Java
    Réponses: 1
    Dernier message: 03/07/2004, 21h48

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo