java - 如何修复小程序在 Eclipse 中工作但不能在任何浏览器中工作
问题描述
我想在动态 Web 项目中使用 java 小程序,但它不起作用。我创建了小程序:
`public class MyApplet extends JApplet {
static final long serialVersionUID = 1L;
private JTextField textField;`
/**
* Create the applet.
*/
public MyApplet() {
getContentPane().setLayout(null);
JLabel lblTag = new JLabel("Tag:");
lblTag.setBounds(91, 51, 46, 14);
getContentPane().add(lblTag);
textField = new JTextField();
textField.setBounds(126, 48, 86, 20);
getContentPane().add(textField);
textField.setColumns(10);
}
}`
然后我把它放到 .JAR 文件中
接下来我创建了动态 Web 项目并在 index.html 文件所在的文件夹中分配 .JAR 文件。
我也放
`<applet code="MyApplet.class" archive="name.jar" width="500" height="500" ></applet>`
到 index.html 文件。
当我在 apache 服务器上打开这个项目时,我可以看到带有样式的 html 文件,但 aplet 没有显示。它发生在每个浏览器中。我在控制台中没有任何错误:
`sty 20, 2019 9:13:47 PM org.apache.catalina.startup.VersionLoggerListener log
INFO: Server version: Apache Tomcat/8.5.37
sty 20, 2019 9:13:47 PM org.apache.catalina.startup.VersionLoggerListener log
INFO: Server built: Dec 12 2018 12:07:02 UTC
sty 20, 2019 9:13:47 PM org.apache.catalina.startup.VersionLoggerListener log
INFO: Server number: 8.5.37.0
sty 20, 2019 9:13:47 PM org.apache.catalina.startup.VersionLoggerListener log
INFO: OS Name: Windows 10
sty 20, 2019 9:13:47 PM org.apache.catalina.startup.VersionLoggerListener log
INFO: OS Version: 10.0
sty 20, 2019 9:13:47 PM org.apache.catalina.startup.VersionLoggerListener log
INFO: Architecture: amd64
sty 20, 2019 9:13:47 PM org.apache.catalina.startup.VersionLoggerListener log
INFO: Java Home: C:\Program Files\Java\jre1.8.0_121
sty 20, 2019 9:13:47 PM org.apache.catalina.startup.VersionLoggerListener log
INFO: JVM Version: 1.8.0_121-b13
sty 20, 2019 9:13:47 PM org.apache.catalina.startup.VersionLoggerListener log
INFO: JVM Vendor: Oracle Corporation
sty 20, 2019 9:13:47 PM org.apache.catalina.startup.VersionLoggerListener log
INFO: CATALINA_BASE: C:\Users\Admin\eclipse-workspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp1
sty 20, 2019 9:13:47 PM org.apache.catalina.startup.VersionLoggerListener log
INFO: CATALINA_HOME: C:\Users\Admin\Desktop\Projekty PWJJ\apache-tomcat-8.5.37\apache-tomcat-8.5.37
sty 20, 2019 9:13:47 PM org.apache.catalina.startup.VersionLoggerListener log
INFO: Command line argument: -Dcatalina.base=C:\Users\Admin\eclipse-workspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp1
sty 20, 2019 9:13:47 PM org.apache.catalina.startup.VersionLoggerListener log
INFO: Command line argument: -Dcatalina.home=C:\Users\Admin\Desktop\Projekty PWJJ\apache-tomcat-8.5.37\apache-tomcat-8.5.37
sty 20, 2019 9:13:47 PM org.apache.catalina.startup.VersionLoggerListener log
INFO: Command line argument: -Dwtp.deploy=C:\Users\Admin\eclipse-workspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp1\wtpwebapps
sty 20, 2019 9:13:47 PM org.apache.catalina.startup.VersionLoggerListener log
INFO: Command line argument: -Djava.endorsed.dirs=C:\Users\Admin\Desktop\Projekty PWJJ\apache-tomcat-8.5.37\apache-tomcat-8.5.37\endorsed
sty 20, 2019 9:13:47 PM org.apache.catalina.startup.VersionLoggerListener log
INFO: Command line argument: -Dfile.encoding=Cp1250
sty 20, 2019 9:13:47 PM org.apache.catalina.core.AprLifecycleListener lifecycleEvent
INFO: The APR based Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: [C:\Program Files\Java\jre1.8.0_121\bin;C:\WINDOWS\Sun\Java\bin;C:\WINDOWS\system32;C:\WINDOWS;C:/Program Files/Java/jre1.8.0_121/bin/server;C:/Program Files/Java/jre1.8.0_121/bin;C:/Program Files/Java/jre1.8.0_121/lib/amd64;C:\ProgramData\Oracle\Java\javapath;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\System32\WindowsPowerShell\v1.0\;C:\Program Files (x86)\Skype\Phone\;C:\MinGW\bin;C:\WINDOWS\system32\config\systemprofile\.dnx\bin;C:\Program Files\Microsoft DNX\Dnvm\;C:\Program Files\Microsoft SQL Server\130\Tools\Binn\;C:\Program Files (x86)\Windows Kits\8.1\Windows Performance Toolkit\;C:\WINDOWS\System32\OpenSSH\;C:\Program Files\PuTTY\;C:\Program Files\Git\cmd;C:\Users\Admin\AppData\Local\Microsoft\WindowsApps;C:\Program Files (x86)\Nmap;C:\Users\Admin\AppData\Local\GitHubDesktop\bin;C:\WINDOWS\system32;;.]
sty 20, 2019 9:13:47 PM org.apache.coyote.AbstractProtocol init
INFO: Initializing ProtocolHandler ["http-nio-8080"]
sty 20, 2019 9:13:47 PM org.apache.tomcat.util.net.NioSelectorPool getSharedSelector
INFO: Using a shared selector for servlet write/read
sty 20, 2019 9:13:47 PM org.apache.coyote.AbstractProtocol init
INFO: Initializing ProtocolHandler ["ajp-nio-8009"]
sty 20, 2019 9:13:47 PM org.apache.tomcat.util.net.NioSelectorPool getSharedSelector
INFO: Using a shared selector for servlet write/read
sty 20, 2019 9:13:47 PM org.apache.catalina.startup.Catalina load
INFO: Initialization processed in 608 ms
sty 20, 2019 9:13:47 PM org.apache.catalina.core.StandardService startInternal
INFO: Starting service [Catalina]
sty 20, 2019 9:13:47 PM org.apache.catalina.core.StandardEngine startInternal
INFO: Starting Servlet Engine: Apache Tomcat/8.5.37
sty 20, 2019 9:13:48 PM org.apache.coyote.AbstractProtocol start
INFO: Starting ProtocolHandler ["http-nio-8080"]
sty 20, 2019 9:13:48 PM org.apache.coyote.AbstractProtocol start
INFO: Starting ProtocolHandler ["ajp-nio-8009"]
sty 20, 2019 9:13:48 PM org.apache.catalina.startup.Catalina start
INFO: Server startup in 274 ms`
解决方案
这不适用于现代浏览器。允许运行 Applets 的 Java 插件已经过时了一段时间,例如Firefox 在 2016 年就这样做了:
目前使用 Silverlight 或 Java 等插件的网站和出版商应加快向 Web 技术的过渡。Web 平台功能强大,通常可以做插件可以做的所有事情。在站点需要扩展 Web 技术的极少数情况下,推荐的解决方案是将附加功能开发为 Firefox 插件。站点维护者应该为插件在 2016 年底之前停止在所有版本的 Firefox 中工作做好准备。
推荐阅读
- r - 通过单击、actionButton() 或闪亮小部件选择数据表行
- python - 为 Jupyter Notebook 安装 ffmpeg
- python - 更干净的 Python 建议
- vb.net - 找不到 c:\ 的路径
- java - 无法将 ECPublicKeyImpl 转换为 BCECPublicKey
- python - 为什么for循环不移动到列表中的第二项
- javascript - Javascript函数控制台日志
- ffmpeg - 使用 FFmpeg 和 Nvidia GPU 加速
- performance - DolphinDB 查询中的链式比较
- c - 为什么当我输入 3 时我在这个程序中得到 0 结果?