2012-07-09 85 views
0

我在使用netbeans中的java web start applet时遇到了问题。我无法获得applet从运行地点(即服务器)访问的文件和图像的路径权限。基本上我在本地机器上使用图像来显示文件夹和PDF文件的图标,当我在非web上下文中运行applet时,这种方法运行良好,但试图在服务器意义上使用它会导致失败。Java applet中的文件路径问题

下面是代码造成的问题:

company.readCompanyFile("C:\\Users\\Chris\\Desktop\\ArFile Clients\\" + companyName + "\\" 
        + companyName + ".cmp"); 

这只是一个简单的缓冲阅读器试图读取存储在这个位置上的文件。就是这些目录应该代替嵌套程序根目录是内部的问题:

C:\Users\Chris\Documents\NetBeansProjects\ArFile 

一个例子反映了我上面已经给将是巨大的

编辑的信息:这是错误消息通过

BadFieldException[ The field <extension>href has an invalid value: C:\Users\Chris\Desktop\ArFile Clients,C:\Users\Chris\Desktop\ArFile Clients] 
at com.sun.javaws.jnl.XMLUtils.getAttributeURL(Unknown Source) 
at com.sun.javaws.jnl.XMLUtils.getRequiredURL(Unknown Source) 
at com.sun.javaws.jnl.XMLFormat.handleResourceElement(Unknown Source) 
at com.sun.javaws.jnl.XMLFormat.access$800(Unknown Source) 
at com.sun.javaws.jnl.XMLFormat$2$1.visitElement(Unknown Source) 
at com.sun.javaws.jnl.XMLUtils.visitChildrenElements(Unknown Source) 
at com.sun.javaws.jnl.XMLFormat$2.visitElement(Unknown Source) 
at com.sun.javaws.jnl.XMLUtils.visitElements(Unknown Source) 
at com.sun.javaws.jnl.XMLFormat.buildResourcesDesc(Unknown Source) 
at com.sun.javaws.jnl.XMLFormat.parse(Unknown Source) 
at com.sun.javaws.jnl.LaunchDescFactory.buildDescriptor(Unknown Source) 
at com.sun.javaws.jnl.LaunchDescFactory.buildDescriptor(Unknown Source) 
at com.sun.javaws.jnl.LaunchDescFactory.buildDescriptorFromCache(Unknown Source) 
at com.sun.javaws.jnl.LaunchDescFactory.buildDescriptorFromCache(Unknown Source) 
at sun.plugin2.applet.JNLP2Manager.initialize(Unknown Source) 
at sun.plugin2.main.client.PluginMain.initManager(Unknown Source) 
at sun.plugin2.main.client.PluginMain.access$200(Unknown Source) 
at sun.plugin2.main.client.PluginMain$2.run(Unknown Source) 
at java.lang.Thread.run(Unknown Source) 
Error while initializing manager: BadFieldException[ The field <extension>href has an invalid value: C:\Users\Chris\Desktop\ArFile Clients,C:\Users\Chris\Desktop\ArFile Clients], bail out 
BadFieldException[ The field <extension>href has an invalid value: C:\Users\Chris\Desktop\ArFile Clients,C:\Users\Chris\Desktop\ArFile Clients] 
at com.sun.javaws.jnl.XMLUtils.getAttributeURL(Unknown Source) 
at com.sun.javaws.jnl.XMLUtils.getRequiredURL(Unknown Source) 
at com.sun.javaws.jnl.XMLFormat.handleResourceElement(Unknown Source) 
at com.sun.javaws.jnl.XMLFormat.access$800(Unknown Source) 
at com.sun.javaws.jnl.XMLFormat$2$1.visitElement(Unknown Source) 
at com.sun.javaws.jnl.XMLUtils.visitChildrenElements(Unknown Source) 
at com.sun.javaws.jnl.XMLFormat$2.visitElement(Unknown Source) 
at com.sun.javaws.jnl.XMLUtils.visitElements(Unknown Source) 
at com.sun.javaws.jnl.XMLFormat.buildResourcesDesc(Unknown Source) 
at com.sun.javaws.jnl.XMLFormat.parse(Unknown Source) 
at com.sun.javaws.jnl.LaunchDescFactory.buildDescriptor(Unknown Source) 
at com.sun.javaws.jnl.LaunchDescFactory.buildDescriptor(Unknown Source) 
at com.sun.javaws.jnl.LaunchDescFactory.buildDescriptorFromCache(Unknown Source) 
at com.sun.javaws.jnl.LaunchDescFactory.buildDescriptorFromCache(Unknown Source) 
at sun.plugin2.applet.JNLP2Manager.initialize(Unknown Source) 
at sun.plugin2.main.client.PluginMain.initManager(Unknown Source) 
at sun.plugin2.main.client.PluginMain.access$200(Unknown Source) 
at sun.plugin2.main.client.PluginMain$2.run(Unknown Source) 
at java.lang.Thread.run(Unknown Source) 
Error while initializing manager: BadFieldException[ The field <extension>href has an invalid value: C:\Users\Chris\Desktop\ArFile Clients,C:\Users\Chris\Desktop\ArFile Clients], bail out 
+1

您是否设置了安全措施以允许小应用程序访问本地资源? – John3136 2012-07-09 01:15:19

+0

在签署?我已经设置了小应用程序被签署 – 2012-07-09 01:19:04

+0

我想我可能已经解决了这个问题,正在生成的.jlnp文件添加了一个不存在的引用,删除了我的应用程序编译并运行后,现在它有一个完全不同的问题,但是在再次发布之前,它会先尝试修补它 – 2012-07-09 03:50:16

回答

0

我用的是相对文件路径功能Applet中给出的,这并不在Java Web Start的环境中工作,绝对寻路必须被用于应用程序的功能。