java - 与 JWS java 应用程序的服务器交互的最佳方式是什么

标签 java netbeans java-web-start japplet

我在确定如何使用 Java Web Start 程序写入文件时遇到一些问题,我想将文件写入描述已上传到云服务器的文件的服务器。我还希望从客户端发送文件名和路径等数据,以便我可以在用户和云存储设施之间创建连接并将其文件发送到其中。

目前,当我尝试运行我的 Web Start 应用程序时,它工作正常并且没有错误,但根本不会将文件和文件夹写入它所在的服务器。例如,以下代码不起作用:

new File ("ArFile Clients\\File Data\\" 
        + user.getCompany().getName() + "\\" + user.getUsername()).mkdirs();

此目录位于服务器上,创建它是为了存储有关应用程序用户的数据。但在运行时它会被忽略或不执行。

我没有使用套接字或FTP或类似的东西,云服务器有我正在使用的自己的自定义库,我知道问题一定在于Java Web Start的工作方式,我只是找不到任何很好的例子,涉及在服务器计算机上创建文件并从客户端计算机提取数据(只是文件系统数据,例如目录和文件)

最佳答案

我认为对 webstart 真正含义的一些解释在这里是相关的:)

首先,web start是运行在客户端JVM上的东西。 是的,它使用 jnlp 文件,您应该在其中指定依赖 jar/其他资源的 url。 web start 所做的就是读取这个 jnlp 文件(同样在客户端),解析,找出资源所在的 url 列表,并将它们下载到客户端计算机上。 从物理上讲,这是通过使用 javaws 实用程序来实现的,可以在

中找到该实用程序

%JDK_HOME%\bin 文件夹。 就像“java”获取一系列类文件/jar 作为输入并生成一个 jvm 一样,javaws 获取一个 jnlp,读取它,带来资源并生成一个 jvm :) Web Start 还可以执行一些其他操作(例如自动更新),但这是“核心功能”。

底线,如果您确实想在服务器上写入一些文件,则 Web Start 是一个错误的方法。

从概念上讲,一旦您的应用程序加载并且您想要将文件存储在服务器上 - 从客户端创建到服务器计算机的某种连接并将文件上传到那里。不管怎样,它无法通过 Web Start 完成:)

希望对你有帮助

关于java - 与 JWS java 应用程序的服务器交互的最佳方式是什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11389567/

相关文章:

java - 如何分析 NetBeans Maven 项目中的 JUnit 测试?

java - 如何获得表中两列的乘积?

java - 如何在 Java 10 或更高版本的 Java 11 中运行现有的 JAVA Web 启动应用程序

java - Spring自定义身份验证过滤器和提供者不调用 Controller 方法

Java,搜索给定模式的文件并获取目录名和完整文件名

java - 将包含 "ñ"等字符的字符串写入 txt 文件

java - netbeans 中的单选按钮

java - 仅在 Java Web start 中在 Glassfish 服务器中查找 EJB Jndi

Java Web Start 在 Windows XP 上总是缓存 JNLP 文件

java - java中如何缓存表数据