首页 \ 问答 \ HTC G1怎么用Java软件?

HTC G1怎么用Java软件?

我下载了一个虚机,可是一打开就提示错误用不了啊!!
更新时间:2023-07-07 15:07

最满意答案

在服务器端的调用APPLET的HTML文件中也需要将它包含进来,以便没有事先安装JRE的客户端下载,具体的写法,请接着往下看; 具体步骤如下: 服务器端: 1.将程序需要用到的各种包文件全部解压(我这儿要用到WEBLOGIC的JMS包使用命令jar xf weblogicc.jar),然后使用JDK的打包命令将编译好的监控程序.class和刚才解压的包一起打包到一个包中。(前提我已经将监控程序和解开的包都放在同一个目录下了),都是dos状态下的命令,具体命令见jdk1.3(1.2)的bin目录下, 命令如下: jar cvf monitor.jar *.class 此命令生成一个名为monitor.jar的包 2.为刚才创建的包文件(monitor.jar)创建keystore和keys。其中,keystore将用来存放密匙(private keys)和公共钥匙的认证,alias别名这儿取为monitor。 命令如下: keytool -genkey -keystore monitor.keystore –alias monitor 此命令生成了一个名为monitor.keystore的keystore文件,接着这条命令,系统会问你好多问题,比如你的公司名称,你的地址,你要设定的密码等等,都由自己的随便写。 3.使用刚才生成的钥匙来对jar文件进行签名 命令如下: jarsigner -keystore monitor.keystore monitor.jar monitor 这个命令将对monitor.jar文件进行签名,不会生成新文件。 4.将公共钥匙导入到一个cer文件中,这个cer文件就是要拷贝到客户端的唯一文件 。 命令如下: keytool -export -keystore monitor.keystore -alias monitor -file monitor.cer 此条命令将生成monitor.cer认证文件,当然这几步都有可能问你刚才设置的密码。这样就完成了服务器端的设置。这时你就可以将jar文件和keystore文件以及cer文件(我这儿是monitor.jar,monitor.keystore,monitor.cer)拷贝到服务器的目录下了,我用的是weblogic6.0,所以就拷贝到C:\bea\wlserver6.0\config\mydomain\applications\DefaultWebApp_myserver下的自己建的一个目录下了。 客户端: 1. 首先应该安装jre1.3.0_01,然后将服务器端生成的monitor.cer 文件拷贝到jre的特定目录下,我这儿是: c:\program files\javasoft\jre\1.3.0_01\lib\security目录下。 2. 将公共钥匙倒入到jre的cacerts(这是jre的默认keystore) 命令如下: keytool -import -alias monitor -file monitor.cer -keystore cacerts 注意这儿要你输入的是cacerts的密码,应该是changeit,而不是你自己设定的keystore的密码。 3. 修改policy策略文件,在dos状态下使用命令 policytool 系统会自动弹出一个policytool的对话框,如图4所示,在这里面首先选择file菜单的open项,打开c:\program files\javasoft\jre\1.3.0_01\lib\security目录下的java.poliy文件,然后在edit菜单中选择Change keystore ,在对话框中new keystore url:中输入 file:/c:/program files /javasoft/jre/1.3.0_01/lib/security/cacerts, 这儿要注意反斜杠,在new keystore type 中输入JKS,这是cacerts的固定格式,然后单击Add Policy Entry,在出现的对话框中CodeBase中输入: http://URL:7001/* 其中的URL是服务器的IP地址,7001是我的weblogic的端口,如果你是在别的应用服务器上比如说是apache,那端口号就可以省略掉。 在SignedBy中输入(别名alias):这儿是Monitor然后单击add peimission按钮,在出现的对话框中permission中选择你想给这个applet的权限,这儿具体有许多权限,读者可以自己找资料看看。我这儿就选用allpeimission,右边的signedBy中输入别名:monitor 最后保存,在file菜单的save项。 当然你可以看见我已经对多个包实现了签名认证。 这样客户端的设置就完成了。在客户端用ie运行该applet程序时,会询问你是不是对该签名授权,选择授权后,包会自动从服务器下载到本地计算机,而且ie会自动启动jre,在右下栏中可以看见,相当于ie的java控制台。 4.调用applet的html文件 大家都知道由于java2的安全性,对applet的正常调用的html文件已经不能再使用了,而改为ActiveX类型的调用。具体的又分ie和nescape的不同写法,这一些在sun网上都能找到现成的教程。我就不多说了,只是将我的这个小程序为ie写的的html给大家看看。 <html> <META HTTP-EQUIV="Content-Type" CONTENT="text/html;CHARSET=gb2312"> <center> <h3>消息中心实时监控平台</h3> <hr> <OBJECT classid="clsid:8AD9C840-044E-11D1-B3E9-00805F499D93" width="900" height="520" align="baseline" codebase=" http://192.168.2.217:7001/j2re-1_3_0_01-win-i.exe#Version=1,3,0,0"> <PARAM NAME="java_code" VALUE="wise.monitor.applet.monitorApplet"> <PARAM NAME="java_codebase" VALUE="monitor/classes"> <PARAM NAME="java_type" VALUE="application/x-java-applet;version=1.3"> <PARAM NAME="ARCHIVE" VALUE="monitor.jar" > <PARAM NAME="scriptable" VALUE="true"> </OBJECT> </center> </html> 其中我要强调一点,因为applet每一次的改动都需要重新打包签名,手续非常繁琐,所以在具体的实现中要将一些会变化参数放到html文件中来,传到applet中去,这一点网上文章好多,自己去看吧。

其他回答

问题可以在明确一点吗?貌似没听过java applet的四种方法,可能是我寡闻了,坐等高手吧。

相关问答

更多
  • 1、DOM生成和解析XML方式 为 XML 文档的已解析版本定义了一组接口。解析器读入整个文档,然后构建一个驻留内存的树结构,然后代码就可以使用 DOM 接口来操作这个树结构。优点:整个文档树在内存中,便于操作;支持删除、修改、重新排列等多种功能;缺点:将整个文档调入内存(包括无用的节点),浪费时间和空间;使用场合:一旦解析了文档还需多次访问这些数据;硬件资源充足(内存、CPU)。 2、SAX生成和解析XML方式 为解决DOM的问题,出现了SAX。SAX ,事件驱动。当解析器发现元素开始、元素结束、文本、文 ...
  • import java; public class nihao extends Applet { public void init() { setBackground(Color,而且只被调用一次!运行Applet程序时首先调用该方法.*.希望你能明白. 给你举个例子吧! import java.*.awt.blue) } } 此例就是用init()方法设置Applet背景区域的颜色.applet,这样我的工夫也没白费Applet主要方法有init() start() stop() pain() destr ...
  • 1.介绍 1)DOM(JAXP Crimson解析器) DOM是用与平台和语言无关的方式表示XML文档的官方W3C标准。DOM是以层次结构组织的节点或信息片断的集合。这个层次结构允许开发人员在树中寻找特定信息。分析该结构通常需要加载整个文档和构造层次结构,然后才能做任何工作。由于它是基于信息层次的,因而DOM被认为是基于树或基于对象的。DOM 以及广义的基于树的处理具有几个优点。首先,由于树在内存中是持久的,因此可以修改它以便应用程序能对数据和结构作出更改。它还可以在任何时候在树中上下导航,而不是像SAX那 ...
  • do while while for 貌似就三种 勉强加一个(for each) 区别的话,.讲讲 do while 和while do...while 是先执行一次循环体再做判断要不要再循环 而while是先判断条件满不满足才执行循环体
  • Applet主要方法有init() start() stop() pain() destroy() init() 方法是初始化方法,用于在启动Applet程序之前做一些必要的初始化工作!运行Applet程序时首先调用该方法,而且只被调用一次. 举个例子: import java.awt.*; import java.applet.*; public class nihao extends Applet { public void init() { setBackground(Color.blue) } } ...
  • 是指的访问权限么? 1,public 2,protected 3,(default) 4,private 1任何类都可以访问 2在同一个包中的所有类可以访问,以及该类的子类 3同一个包中的所有类 4只能在本类中访问
  • 由浏览器或 applet viewer 调用,通知此 applet 它已经被加载到系统中。它经常在第一次调用 start 方法前被调用。 如果 Applet 的子类要执行初始化,则应该重写此方法。例如,使用线程的 applet 将用 init 方法创建线程,用 destroy 方法销毁它们。 Applet 类提供的此方法实现不执行任何操作。 ———————————————————————————— 以上是JDK的API说明,实际用的时候一般是在这里获取html的参数,进行一些初始化。
  • 你的MouseInsert不是Mousebandymas的内部类(顺便说一句,你为什么要扩展Mousebandymas?),所以当你改为填充时,你改变了其他一些toFill,而不是Mousebandymas中的那个。 你的意思是这样的: package mousebandymas; import java.applet.Applet; import java.awt.Color; import java.awt.Graphics; public class Mousebandymas extends A ...
  • 请理解,您无法完全控制是否或何时调用paint(...),并且repaint()调用仅是JVM要绘制的建议。 如果有太多的repaint()请求进入并且它们像你的那样堆叠起来,那么它们将被合并。 有关这方面的更多详细信息,请查看本文, 在AWT和Swing中绘画 。 无论如何,即使您的代码有效,它仍然不会对代码的用户造成任何可见的更改,因为所有x和y的更改和绘制几乎都会立即完成。 也许你真的想要使用Swing Timer? 也许你想在Swing而不是AWT中重新编码。 Please understand t ...
  • 不要使用浏览器组合框。 直接在applet中使用JComboBox或Choice ,这样您就可以在不出门的情况下完成所有操作。 它可能如@Roman C所述,但对于您描述的任务来说似乎过于复杂。 To have my applet work; 1- I exported the applet as jar file(named as printApplet.jar) and copied it under the same folder as my xhtml page. 2- I put the appl ...

相关文章

更多

最新问答

更多
  • 获取MVC 4使用的DisplayMode后缀(Get the DisplayMode Suffix being used by MVC 4)
  • 如何通过引用返回对象?(How is returning an object by reference possible?)
  • 矩阵如何存储在内存中?(How are matrices stored in memory?)
  • 每个请求的Java新会话?(Java New Session For Each Request?)
  • css:浮动div中重叠的标题h1(css: overlapping headlines h1 in floated divs)
  • 无论图像如何,Caffe预测同一类(Caffe predicts same class regardless of image)
  • xcode语法颜色编码解释?(xcode syntax color coding explained?)
  • 在Access 2010 Runtime中使用Office 2000校对工具(Use Office 2000 proofing tools in Access 2010 Runtime)
  • 从单独的Web主机将图像传输到服务器上(Getting images onto server from separate web host)
  • 从旧版本复制文件并保留它们(旧/新版本)(Copy a file from old revision and keep both of them (old / new revision))
  • 西安哪有PLC可控制编程的培训
  • 在Entity Framework中选择基类(Select base class in Entity Framework)
  • 在Android中出现错误“数据集和渲染器应该不为null,并且应该具有相同数量的系列”(Error “Dataset and renderer should be not null and should have the same number of series” in Android)
  • 电脑二级VF有什么用
  • Datamapper Ruby如何添加Hook方法(Datamapper Ruby How to add Hook Method)
  • 金华英语角.
  • 手机软件如何制作
  • 用于Android webview中图像保存的上下文菜单(Context Menu for Image Saving in an Android webview)
  • 注意:未定义的偏移量:PHP(Notice: Undefined offset: PHP)
  • 如何读R中的大数据集[复制](How to read large dataset in R [duplicate])
  • Unity 5 Heighmap与地形宽度/地形长度的分辨率关系?(Unity 5 Heighmap Resolution relationship to terrain width / terrain length?)
  • 如何通知PipedOutputStream线程写入最后一个字节的PipedInputStream线程?(How to notify PipedInputStream thread that PipedOutputStream thread has written last byte?)
  • python的访问器方法有哪些
  • DeviceNetworkInformation:哪个是哪个?(DeviceNetworkInformation: Which is which?)
  • 在Ruby中对组合进行排序(Sorting a combination in Ruby)
  • 网站开发的流程?
  • 使用Zend Framework 2中的JOIN sql检索数据(Retrieve data using JOIN sql in Zend Framework 2)
  • 条带格式类型格式模式编号无法正常工作(Stripes format type format pattern number not working properly)
  • 透明度错误IE11(Transparency bug IE11)
  • linux的基本操作命令。。。