小编Jai*_*ims的帖子

如何在浏览器和Java Web Start applet之间进行通信

现在的情况

我们目前使用applet执行一些操作,然后重定向当前页面.在其核心中,您可以看到applet如下:

public class ExampleApplet extends Applet {
    @Override
    public void init() {
        Button redirect = new Button("Redirect");
        this.add(redirect);
        final String target = this.getParameter("targetPage");
        redirect.addActionListener((ActionEvent e) -> {
            try {
                getAppletContext().showDocument(new URL(target), "_parent");
            } catch (MalformedURLException ex) {}
        });
    }
}
Run Code Online (Sandbox Code Playgroud)

以最简单的方式调用applet:

<applet code="com.example.applet.ExampleApplet.class" archive="${appletUrl}" width="100" height="30">
    <param name="targetPage" value="http://localhost:8080/applet/"/>
</applet><br/><br/>
Run Code Online (Sandbox Code Playgroud)

其中${appletUrl}返回applet JAR的位置.

所以applet只不过是一个调用getAppletContext().showDocument(new URL(target), "_parent");刷新当前页面的简单按钮.这已经很长时间正确地完成了它的工作.现在这是问题所在.

移民

众所周知,Chrome不支持Applets.从那时起搁置一段时间IEFireFox仍然支持他们.在2016年底,他们也将不再支持他们.所以我们决定使用JWS和迁移applet JNLP.

迁移此简单重定向按钮示例将提供以下html代码段和JNLP文件:

<a href="${jnlpUrl}">Launch JNLP</a> …
Run Code Online (Sandbox Code Playgroud)

java browser jnlp applet java-web-start

7
推荐指数
1
解决办法
6828
查看次数

杰克逊:将对象字段序列化为数组

我很新Jackson,但我偶然发现了以下问题:

我想将一个简单的对象序列化为其字段数组.所以考虑以下课程:

public class UserModel {
    private String id;
    private String firstName;
    private String lastName;
    private String email;
    private String company;
}
Run Code Online (Sandbox Code Playgroud)

我得到以下json:

{
   "id":"cec34b58",
   "firstName":"foo",
   "lastName":"bar",
   "email":"foo@bar.com",
   "company":"FooBar"
}
Run Code Online (Sandbox Code Playgroud)

但我想要的是以下内容:

[
   "cec34b58",
   "foo",
   "bar",
   "foo@bar.com",
   "FooBar"
]
Run Code Online (Sandbox Code Playgroud)

如果有更简单的方法,我想避免使用自定义序列化程序.阅读Jackson Annotations,我没有立即看到允许立即转换模型的东西.谷歌只建议将Java序列化为Collectionsjson,但是从Java Object到json数组都没有.

java json jackson

4
推荐指数
1
解决办法
1749
查看次数

标签 统计

java ×2

applet ×1

browser ×1

jackson ×1

java-web-start ×1

jnlp ×1

json ×1