Windows Server で Apache Tomcat 5.5 Web サーバー (これは非常に新しい) を使用しています。
HRCapture というクラスを作成し、その中に HR というクラスを作成しました。
package edu.usf.cse.uguard;
import java.util.*;
public class HRCapture
{
class HR
{
int heartRate;
Date timeStamp;
HR (int hr, Date ts)
{
heartRate = hr;
timeStamp = ts;
}
HR()
{
}
}
public HRCapture()
{
user = "";
activity = "";
typeOfTravel = "";
}
public void newHR(int hr, Date ts)
{
hrArray.add( new HR(hr, ts));
}
public String user, activity, typeOfTravel;
private ArrayList<HR> hrArray = new ArrayList<HR>();
double longitude = 0.0;
double latitude = 0.0;
}
javac でコンパイルし ("HRCapture.class" と "HRCapture$HR.class" が得られました)、次の場所に置きました: "C:\Program Files\Apache Software Foundation\Tomcat5.5\webapps\ROOT\WEB- INF\classes\edu\usf\cse\uguard".
別のファイルで、タイプ HRCapture の変数を初期化しようとしています。
<%@ page language="java" %>
<%@ page import="edu.usf.cse.uguard.*" %>
<%@ page import="java.sql.*" %>
<%@ page import="org.json.simple.JSONObject" %>
<%@ page import="org.json.JSONArray" %>
<%@ page import="java.util.*" %>
<%@ page import="com.google.gson.*" %>
<%@ page import="com.google.gson.Gson" %>
<%
HRCapture hrc = new HRCapture();
if (request.getParameter("id") == null)
{
}
else
{
String input = request.getParameter("id");
Gson gson = new Gson();
try
{
//hrc = gson.fromJson(input , HRCapture.class);
//out.println(input);
out.println("Success");
}
catch (JsonSyntaxException ex)
{
}
catch (JsonParseException ex)
{
}
catch (Exception e)
{
}
}
%>
ただし、Web ページにアクセスすると、HRCapture クラス内でコンストラクターを public に設定しているにもかかわらず、「コンストラクター HRCapture() が表示されません」というエラーが表示されます。このエラーは、私が持っている行で発生しますHRCapture hrc = new HRCapture();
<%@ page import="edu.usf.cse.uguard.*" %> と <%@ page import="edu.usf.cse.uguard.HRCapture" %> の両方を試しましたが、同じ結果が得られました...
私のインポートステートメントは間違っていますか? コンストラクターをどうにかして台無しにしましたか?
どんな助けでも大歓迎です!