私はhtml、javascript、javaを使用して簡単なWebアプリケーションを試しています。 HTMLとjavascriptはフロントエンドの一部であり、javaはバックエンドを形成します。私はアプレットを使用しています。現在の要件では、HTMLとJavaScriptのみを使用する必要があるため、JSPまたはJSFを使用したくありません。次のエラーが表示されます。バックエンドとしてJavaを使用してJavaにJavaを接続する
私はオンラインソースから、このコードを得ました。私のコードは以下の通りです:
HTML:
<script type="text/javascript" src="liveconnect.js"> </script>
</head>
<body onload="showProgrammer()">
<applet id="app" code="LauncherApplet" height="1" width="1" MAYSCRIPT></applet>
<table>
<tr>
<td>Name</td>
<td>:</td>
<td><input type="text" id="name"/></td>
</tr>
<td>Age</td>
<td>:</td>
<td><input type="text" id="age"/></td>
</tr>
<td>Programming Language(PHP,Java or Python)</td>
<td>:</td>
<td><input type="text" id="language"/></td>
</tr>
</table>
<input type="button" onclick="processProgrammer()" value="click"/>
</body>
JS:
function Programmer(name,age,language){
this.name=name;
this.age=age;
this.language=language;
}
function showProgrammer(){
try{
var programmer=app.getProgrammer(); //app is the id of applet tag which refers to the applet instance.
var data="Name= "+programmer.name+",Age= "+programmer.age+",Language= "+programmer.language;
alert(data);
}
catch(e){
alert(e);
}
}
function processProgrammer(){
try{
var name=document.getElementById("name").value;
var age=document.getElementById("age").value;
var language=document.getElementById("language").value;
var programmer=app.getProgrammer();
var myprog=new Programmer(name,age,language);
programmer.setData(myprog);
var advice=programmer.getAdvice();
alert(advice);
}
catch(e){
alert(e);
}
}
アプレット:
import java.applet.*;
import java.awt.*;
public class LauncherApplet extends Applet{
public Programmer getProgrammer(){
return new Programmer();
}
}
メインjavaファイル:
import netscape.javascript.*;
public class Programmer {
public String name="Programmer1";
public String age="20";
public String language="Java";
public void setData(JSObject js){
try{
this.name=((String)js.getMember("name")).toLowerCase();
this.age=((String)js.getMember("age")).toLowerCase();
this.language=((String)js.getMember("language")).toLowerCase();
System.out.println("Name= "+name+",Age= "+age+",language= "+language);
}
catch(JSException e){System.out.println(e);}
}
public String getAdvice(){
String advice="";
switch(language){
case "php":
advice=name+", you should definitely try out CodeIgniter.";
break;
case "java":
advice=name+", you should definitely try out JavaServer Faces.";
break;
case "python":
advice=name+", you should definitely try out Django.";
break;
default:
advice="You language of choice is not any one of PHP, Java or Python";
}
return advice;
}
}
Javaファイルが正常にコンパイルされました。エラーはありません。私が間違っていることを教えてください。
ありがとうございます。
*「HTMLとJavaScriptはフロントエンドの一部であり、Javaはバックエンドを形成します。私はアプレットを使用しています。」*これは意味をなさない。アプレットはUIです。バックエンドでのみJavaを使用している場合は、アプレットを使用したくありません。 –
HTML、Javascript(またはjquery)を使用して、ajaxコマンドをサーブレットまたはWebサービスに送信します。 –
さらに、アプレットは死んでいます。 Chromeは、Javaプラグインがブラウザで動作する必要があるNPAPIをサポートしなくなりました.Firefoxもサポートを中止しています。また、Edgeもアプレットをサポートしていません。 –