JAVA SERVLETでプログラムを作成した際に、以下のようなエラーが出ました。
何がいけないのでしょうか?

注: sun.tools.javac.Main は推奨されません。
c:\resin-2.0.3\webapps\examples\WEB-INF\classes\XSLProc.java:4: クラス org.apache.xalan.xslt.XSLTProcessor
が import に見つかりません。
import org.apache.xalan.xslt.XSLTProcessor;

このQ&Aに関連する最新のQ&A

A 回答 (2件)

import org.apache.xalan.xslt.XSLTProcessor;


この行をコンパイルしようとしたとき?もしくは実行しようとした時に、org.apache.xalan.xslt.XSLTProceクラスにパスが通っていないため見つかりませんといっています。

アプリケーションサーバーでこのエラーが出たのだとすれば、アプリケーションサーバーのJavaEngineの設定とOSのCLASSPATHでパスが通っているかどうかを確認してください。
コンパイル時のエラーであれば、コンパイルしているツールの設定やOSのCLASSPATHを確認してください。
    • good
    • 0
この回答へのお礼

ありがとうございます。解決しました。

お礼日時:2001/12/13 13:07

おー! Xalanですね!


と言いいつつも、実はよく知らないのですが...

原因としては、
Xalanモジュールのインストールがうまくいっていないか、もしくは

> import org.apache.xalan.xslt.XSLTProcessor

というクラスがもともと存在していないか、というところでしょうか?

参考URLはAPIのドキュメントです。
ヒントになれば、と思うのですが...

参考URL:http://www.tom.sfc.keio.ac.jp/java_pure/xalan-j_ …
    • good
    • 0
この回答へのお礼

参考になりました!ありがとうございます。
教授に言ったら、Xalanはやめて、JACSPを使うように言われてしまいました(^^;

お礼日時:2001/12/13 13:09

このQ&Aに関連する人気のQ&A

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

Qimportするには java.io.*; import org.apache.log4j.*;

EclipseでJavaの開発をしています。
import java.io.*;
import org.apache.log4j.*;
がエラーになります。
多分ライブラリーに入れる必要があるのだと思いますが、その方法について
教えて下さい。宜しくお願い致します。

Aベストアンサー

プロジェクトフォルダを右クリック→「ビルド・パス」→「ビルド・パスの構成」
あるいはプロジェクトフォルダを右クリック→「プロパティ」→「Javaのビルド・パス」

で、ライブラリがプロジェクトフォルダ配下に存在しているなら「Jarの追加」
プロジェクトフォルダ以外の場所にあるなら「外部Jarの追加」で追加できます。

ちなみにjava.ioはJ2SEに含まれているので(「JREシステムライブラリ」があるはずなので)
追加しなくても良いです。

QTOMCATで\webapps\ROOTフォルダで自作のindex.jspを表示させるには。

いままで、TOMCATで\webapps\ROOT内に、
index.htmlをおき、トップページにしていましたが、
これを、index.jspに変えようと思いました。
しかし、index.jspは、もともと、TOMCAT宣伝用の
index.jspがあるので、これの名前を変えたのですが、
どうしても、index.jspでこの宣伝用のページ
が表示されてしまいます。
いままで使っていたので、なんとか現在の
ドキュメントルートでindex.jspを使いたいのですが、
どうしたらいいでしょうか。
(WEB-INF内のweb.xmlのservlet-mappingの設定が、
関係ありそうですが)。
お願いします。

Aベストアンサー

ROOT内のWEB-INF内にあるweb.xmlをエディタなどで開いてください。そして以下の部分を探してください。

<servlet-mapping>
<servlet-name>org.apache.jsp.index_jsp</servlet-name>
<url-pattern>index.jsp</url-pattern>
</servlet-mapping>

この部分をコメントアウトします。つまり、手前に<!--を、後に-->をつけて、

<!--
<servlet-mapping>
<servlet-name>org.apache.jsp.index_jsp</servlet-name>
<url-pattern>index.jsp</url-pattern>
</servlet-mapping>
-->

こうするわけですね。
これで、http://localhost:8080/でwebapps/ROOT/index.jspが表示されると思います。

Qorg.apache.tools.zip.* を使って圧縮したZIPファイルを開くとエラーとなってしまう

お世話になります。

開発環境は以下のとおりです。
開発ツール NetBeans IDE 6.5
JDK 1.6.0_11
OS Windows XP SP2
ant.jar version 1.7.1

はじめ、JDK付属の「java.util.zip.ZipOutputStream」,「java.util.zip.Entry」を用いて、
ZIPファイルを作成していたのですが、
日本語名のファイルを圧縮すると文字化けしてしまい、
調べてみるとJakart Ant内のant.jarの「org.apache.tools.zip.ZipOutputStream」,「org.apache.tools.zip.Entry」を使って
import宣言を変えてsetEncodingしてしまえば簡単に出来るという情報がありました。

早速やってみたのですが、
1.ZIPファイルは作成される。このときファイルサイズがjava.util.zip.*を使ったときと同じ
2.LhaplusやWinRARといった解凍ツールを使って解凍するとエラーが
発生して中身がない
3.日本語が含まれないファイルを圧縮・解凍しても同じ現象
4.java.util.zip.* を使ったときは正常に圧縮・解凍できる(文字化けはしていますが・・・)
といった状況になってしまいました。

ロジックを何度も見直し、ZipOutputStreamのflush、closeもしっかり行っていますし、CRC32の設定やファイルサイズの設定も手順どおりにやっているつもりです。

どなたかご存知のかたがいらっしゃいましたらご教授の程、よろしくお願いいたします。

お世話になります。

開発環境は以下のとおりです。
開発ツール NetBeans IDE 6.5
JDK 1.6.0_11
OS Windows XP SP2
ant.jar version 1.7.1

はじめ、JDK付属の「java.util.zip.ZipOutputStream」,「java.util.zip.Entry」を用いて、
ZIPファイルを作成していたのですが、
日本語名のファイルを圧縮すると文字化けしてしまい、
調べてみるとJakart Ant内のant.jarの「org.apache.tools.zip.ZipOutputStream」,「org.apache.tools.zip.Entry」を使って
import宣言を変えてsetEncodingしてしまえば簡単に...続きを読む

Aベストアンサー

具体的なコードが無いので何とも言いようが無いのですが、
以下のコードで試してみてください。
私の環境では、問題なく動作しているクラスです。

import java.io.BufferedInputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.util.Enumeration;
import java.util.zip.ZipException;

import org.apache.tools.zip.ZipEntry;
import org.apache.tools.zip.ZipFile;
import org.apache.tools.zip.ZipOutputStream;


/**
*
* 複数のファイル及び、サブディレクトリを含めたディレクトリを
* zip圧縮・解凍する為のクラスです。
*
* @author HarukaV49
*
*/
public class FileZip {

private static final int EOF = -1;
private static final int ZIP_BUFF_SIZE = 1024;

/**
* デフォルト(ファイル名解析)エンコーダを使用してファイル及びディレクトリをZIP圧縮します。
* @param zipFilename 作成されるZIPファイル名
* @param targetFiles 圧縮対象のファイル及びディレクトリ名列
* @return 作成されたZIPファイル
* @throws ZipException ZIP例外
* @throws FileNotFoundException ファイル例外
* @throws IOException IO例外
*/
public static File zip(String zipFilename, String... targetFiles) throws ZipException, FileNotFoundException, IOException {
return zip(zipFilename, targetFiles, null);
}
/**
* ファイル及びディレクトリをZIP圧縮します。
* @param zipFilename 作成されるZIPファイル名
* @param targetFiles targetFiles 圧縮対象のファイル及びディレクトリ名配列
* @param encoding ファイル名解析エンコーダ名(<A HREF="http://java.sun.com/javase/6/docs/technotes/guides/intl/encoding.doc.html">一覧</A>)
* @return 作成されたZIPファイル
* @throws ZipException ZIP例外
* @throws FileNotFoundException ファイル例外
* @throws IOException IO例外
*/
public static File zip(String zipFilename, String[] targetFiles, String encoding) throws ZipException, FileNotFoundException, IOException {
int n = targetFiles.length;
File[] files = new File[n];
for(int i=0; i<n; i++) {
files[i] = new File( targetFiles[i] );
}
return zip( new File(zipFilename), files, encoding);
}
/**
* ファイル及びディレクトリをZIP圧縮します。
* @param zipFile 作成されるZIPファイル
* @param targetFiles targetFiles 圧縮対象のファイル及びディレクトリ配列
* @param encoding ファイル名解析エンコーダ名(<A HREF="http://java.sun.com/javase/6/docs/technotes/guides/intl/encoding.doc.html">一覧</A>)
* @return 作成されたZIPファイル
* @throws ZipException ZIP例外
* @throws FileNotFoundException ファイル例外
* @throws IOException IO例外
*/
public static File zip(File zipFile, File[] targetFiles, String encoding) throws ZipException, FileNotFoundException, IOException {
ZipOutputStream out = new ZipOutputStream(new FileOutputStream(zipFile));
out.setEncoding(encoding);
for(int i=0; i<targetFiles.length; i++) {
int deleteLength = targetFiles[i].getPath().length() - targetFiles[i].getName().length();
zip(out, targetFiles[i], deleteLength);
}
out.close();
return zipFile;
}
private static void zip(ZipOutputStream out, File targetFile, int deleteLength) throws IOException {
if( targetFile.isDirectory() ) {
File[] files = targetFile.listFiles();
for(int i=0; i<files.length; i++) {
zip(out, files[i], deleteLength);
}
} else {
ZipEntry target = new ZipEntry( targetFile.getPath().substring(deleteLength) );
out.putNextEntry(target);
byte buf[] = new byte[ZIP_BUFF_SIZE];
int count;
BufferedInputStream in = new BufferedInputStream( new FileInputStream(targetFile) );
while( (count = in.read(buf, 0, ZIP_BUFF_SIZE)) != EOF ) {
out.write(buf, 0, count);
}
in.close();
out.closeEntry();
}
}

/**
* デフォルト(ファイル名解析)エンコーダを使用してZIPファイルを解凍します。
* @param filename ZIPファイル名
* @param outDir 解凍先ディレクトリ名
* @return 解凍されたファイルまたはディレクトリ
* @throws ZipException ZIP例外
* @throws FileNotFoundException ファイル例外
* @throws IOException IO例外
*/
public static File unzip(String filename, String outDir) throws ZipException, FileNotFoundException, IOException {
return unzip(filename, outDir, null);
}
/**
* ZIPファイルを解凍します。
* @param filename ZIPファイル名
* @param outDir 解凍先ディレクトリ名
* @param encoding ファイル名解析エンコーダ名(<A HREF="http://java.sun.com/javase/6/docs/technotes/guides/intl/encoding.doc.html">一覧</A>)
* @return 解凍されたファイルまたはディレクトリ
* @throws ZipException ZIP例外
* @throws FileNotFoundException ファイル例外
* @throws IOException IO例外
*/
public static File unzip(String filename, String outDir, String encoding) throws ZipException, FileNotFoundException, IOException {
return unzip( new File(filename), new File(outDir), encoding );
}
/**
* ZIPファイルを解凍します。
* @param filename ZIPファイル
* @param outDir 解凍先ディレクトリ
* @param encoding ファイル名解析エンコーダ名(<A HREF="http://java.sun.com/javase/6/docs/technotes/guides/intl/encoding.doc.html">一覧</A>)
* @return 解凍されたファイルまたはディレクトリ
* @throws ZipException ZIP例外
* @throws FileNotFoundException ファイル例外
* @throws IOException IO例外
*/
public static File unzip(File filename, File outDir, String encoding) throws ZipException, FileNotFoundException, IOException {
ZipFile zipFile = new ZipFile(filename, encoding);
@SuppressWarnings("unchecked")
Enumeration<ZipEntry> enumeration = zipFile.getEntries();
while( enumeration.hasMoreElements() ) {
ZipEntry entry = enumeration.nextElement();
if( entry.isDirectory() ) {
new File(entry.getName()).mkdirs();
} else {
File file = new File(outDir, entry.getName());
file.getParentFile().mkdirs();
FileOutputStream out = new FileOutputStream(file);
InputStream in = zipFile.getInputStream(entry);
byte[] buf = new byte[ZIP_BUFF_SIZE];
int size = 0;
while( (size = in.read(buf)) != EOF ) {
out.write(buf, 0, size);
}
out.close();
in.close();
}
}
zipFile.close();
return outDir;
}

}

具体的なコードが無いので何とも言いようが無いのですが、
以下のコードで試してみてください。
私の環境では、問題なく動作しているクラスです。

import java.io.BufferedInputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.util.Enumeration;
import java.util.zip.ZipException;

import org.apache.tools.zip.ZipEntry;
impo...続きを読む

Qコマンドプロンプトが、C:\>からではなくC:\Document and settings\Owner>から始まって困っています。

コマンドプロンプトでjavaのコンパイルを行おうと考えているのですが、
C:\Document and settings\Owner>
から始まって困っています。
C:\>
から始めるにはどうすればいいですか?
わかる方がいれば教えてください。お願いします。

Aベストアンサー

#1です。

すみません 間違ってました。

cd c:¥ 

と打ってください。

cd はチェンジディレクトリ と言う意味です。

Qimport java.io.*について

「import java.io.*」は入出力のパッケージですが
削除した場合、どのように変更すればきちんとコンパイルで実行できるようになるのでしょうか?

Aベストアンサー

java.ioパッケージ内のクラスを使用しているからコンパイルできないのでは?

その場合、クラスを使用している所でパッケージ名から記述して上げればコンパイルできるようになるかと思います。


BufferedWriter bw = new BufferedWriter();

java.io.BufferedWriter bw = new java.io.BufferedWriter();


でもこの書き方よりはちゃんとインポートしてあげた方が良いのではないかと思いますが。


人気Q&Aランキング

おすすめ情報