java をhtmlインターフェースとして、使う試み。
java で思った動作を導けない
html 形式でジャバとインターフェースを取りcgiの様に動かしたい。
1点において、可能性とぐずりを見つけたので順を追って説明したい。
PCの仕様
2024/02/24 java qiita 資料(0x80070643)
デバイス名 DESKTOP-JDUOV33
プロセッサ Intel(R) Core(TM) i5-7300U CPU @ 2.60GHz 2.71 GHz
実装 RAM 8.00 GB (7.89 GB 使用可能)
デバイス ID
プロダクト ID
システムの種類 64 ビット オペレーティング システム、x64 ベース プロセッサ
ペンとタッチ このディスプレイでは、ペン入力とタッチ入力は利用できません
エディション Windows 10 Pro
バージョン 22H2
インストール日 2022/03/09 (水)
OS ビルド 19045.4046
エクスペリエンス Windows Feature Experience Pack 1000.19053.1000.0
java のdownload
java SDK https://www.oracle.com/jp/java/technologies/downloads/
win https://download.oracle.com/java/21/latest/jdk-21_windows-x64_bin.exe (sha256)
installdirectory
xammp 導入
apache が単独で動いている場合はタクレットでstopをさせてから起動。
<!--chenge no stop eria-->
<role rolename="manager-gui"/>
<user username="tattyan_myneme" password="1122xx" roles="manager-gui"/>
<!--変更前を置いておくこの様にコメントで -->
<!-- -->
</tomcat-users>
"manager-gui"の説明はマニュアル参照
adminを押して管理者権限を上のでいれ、リマインドする。
Server Status ボタンをクリックする
こんなのが、出てきてdirectory管理に入る。
このディレクトリC:\xampp\tomcat\webapps\examples
がhttp://localhost:8080/examples/ になっている
リンクできるエディタでアドレスを書いていく。
最終的に
http://localhost:8080/ Apache Tomcat/8.5.96 404 セットアップアドバイス
http://localhost:8080/examples/index.html ここのアドレス it sampul url link.
C:\xampp\tomcat\webapps\examples
cd C:\xampp\tomcat\webapps\examples
javac Hello.java
出来る Hello.class
java Hello
http://localhost:8080/examples/Hello1.html
http://localhost:8080/examples/Hello.cgi
http://localhost:8080/examples/Hello.java
まずは、tomcat での結果
// Compile: javac Hello.java
public class Hello {
public static void main(String[] args) {
System.out.println("Content-type:text/html\n\n");
System.out.println("<html>");
System.out.println("<head>");
System.out.println("<title>Hello World!</title>");
System.out.println("</head>");
System.out.println("<body>");
System.out.println("<h1>xampp in tomcat to Hello World!</h1>");
System.out.println("<h1>エックスアンプ の トムキャット から こんにちは 世界!</h1>");
System.out.println("</body>");
System.out.println("</html>");
}
}
ローカルサーバー 80
#!C:/Program Files/Java/jre-1.8/bin/java -Dfile.encoding=UTF-8 Hello.cgi
String utf8String = new String(isoBytes, StandardCharsets.UTF_8);
public class Hello {
public static void main(String[] args) {
System.out.println("Content-type:text/html\n\n");
System.out.println("<html>");
System.out.println("<head>");
System.out.println("<title>Hello World!</title>");
System.out.println("</head>");
System.out.println("<body>");
System.out.println("<h1>xampp in tomcat to Hello World!</h1>");
System.out.println("</body>");
System.out.println("</html>");
}
}
exit();
#!C:/Program Files/Java/jre-1.8/bin/java -Dfile.encoding=UTF-8 Hello.java
String utf8String = new String(isoBytes, StandardCharsets.UTF_8);
public class Hello {
public static void main(String[] args) {
System.out.println("Content-type:text/html\n\n");
System.out.println("<html>");
System.out.println("<head>");
System.out.println("<title>Hello World!</title>");
System.out.println("</head>");
System.out.println("<body>");
System.out.println("<h1>xampp in Apache to Hello World!</h1>");
System.out.println("<h1>エックスアンプ の アパッチ から こんにちは 世界!</h1>");
System.out.println("</body>");
System.out.println("</html>");
}
}
exit();
最終的に
apache 80 Hello.cgiでcallして
#!C:/Program Files/Java/jre-1.8/bin/java -Dfile.encoding=UTF-8 Hello.cgi
を実行してjavaを実行させるが、
1行目
#!C:/Program Files/Java/jre-1.8/bin/java -Dfile.encoding=UTF-8 Hello.cgi
の#がjavaで理解不能になって jis のエラー文\xで始まる日本語8xを含むもじをだす。
1行目に「#!」があったら1行目を無視して2行目に行けば結果は違うかもしれない。
scriptして実行できないのが残念です。