0

NetBeans を使用して JSP プロジェクトに取り組んでいます。

「useBeanクラスの属性変数.Playerの値が不正です。」というメッセージが表示されます。StackOverflow でこの質問の他のバージョンを見てきましたが、主な原因は

  1. クラスが適切なディレクトリにあることを確認してください。私の場合は WEB-INF/classes/variables/Player.class です。
  2. Player クラスには、引数なしのパブリック コンストラクターがあります。
  3. 大文字と小文字の区別に注意して、すべてが正しく綴られています。
  4. use Bean 行の後に set プロパティ行が必要です。

したがって、1〜3はすべて適切に設定されていました。set プロパティ行を追加しようとしましたが、まだ実行されません。コードを投稿する前に、以下も追加します。

netbeans からローカルで実行すると、すべて正常に動作します。問題は、サーバーにアップロードしたときにのみ発生します。Netbeans とサーバーは両方とも、サーブレット コンテナー用に Tomcat7 を実行しています。OK、これがエラーの原因となっている JSP コードの一部です

<html>
<head>
<jsp:useBean id="me" class="variables.Player" scope="session"/>
<jsp:setProperty name="me" property="*" />
<jsp:useBean id="allGames" class="variables.BoardList" scope="application"/>
<jsp:setProperty name="allGames" property="*" />
<%@page import="utilities.Utils" %>

これが私の Player クラス コードの始まりです。(クラス全体を表示するように編集されています)

    /*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package variables;

/**
 *
 * @author MagillaGorilla
 */
public class Player {
    public int number;
    public int boardID;
    public String name;

    public Player() {
    number=0;
    boardID=-1;
    name="Player0";
}
    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public int getBoardID() {
        return boardID;
    }

    public void setBoardID(int boardID) {
        this.boardID = boardID;
    }


    public int getNumber() {
        return number;
    }

    public void setNumber(int number) {
        this.number = number;
    }
}

問題があるかどうかはわかりませんが、サーバーにアップロードする方法は次のとおりです。

私はクリーンアップを行い、netbeans をビルドします。ftp を使用して project.war ファイルをサーバーにアップロードします。私のサーバーは Ubuntu 12.10 x32 サーバーです。次を使用してファイルの警告を解除します。

jar xvf project.war

netbeans が問題なく実行するので、全体が特にイライラします! どんな助けでも大歓迎です。これを読んでくれてありがとう。

4

1 に答える 1

0

さて、いくつかの調査を行った後、問題は展開段階にあることがわかりました。手動で戦争を解除すると、何かが台無しになります。代わりに、.war をサーバーにアップロードし、Tomcat マネージャーに .war をデプロイしてもらいます。エラーは発生しません。

于 2013-03-04T07:33:20.757 に答える