小编Win*_*ute的帖子

无法在glassfish 3.1中将字符集从ISO-8859-1更改为UTF-8

我在将Web应用程序响应中的字符集从ISO-8859-1(默认)更改为UTF-8时遇到问题.我已经将VM选项添加-Dfile.encoding=UTF-8到JVM选项中

但是,我确实得到以下HTTP标头作为来自glassfish的响应:

Content-Type: [...;charset=ISO-8859-1]
Server: [GlassFish Server Open Source Edition 3.1]
Run Code Online (Sandbox Code Playgroud)

非常感谢您的帮助/想法.

java servlets glassfish utf-8 character-encoding

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

play.libs.Json.fromJson如何在Java中处理List <T>?

我想使用play 2.1框架附带的Json库.但我坚持将json对象反序列化为java List.

有了gson,你可以写s.th. 喜欢

Type type = new TypeToken<List<XYZ>>(){}.getType();
List<XYZ> xyzList = gson.fromJson(jsonXyz, type); 
Run Code Online (Sandbox Code Playgroud)

有没有办法用play.libs.Json.fromJson做同样的事情?

任何帮助赞赏.

编辑(17.12.2013):

我做了以下工作来解决这个问题.我想有更好的方法,但我没有找到它.

List<MyObject> response = new ArrayList<MyObject>();
Promise<WS.Response> result = WS.url(Configuration.getRestPrefix() + "myObjects").get();
WS.Response res = result.get();
JsonNode json = res.asJson();
if (json != null) {
  for (JsonNode jsonNode : json) {
    if (jsonNode.isArray()) {
      for (JsonNode jsonNodeInner : jsonNode) {
        MyObject mobj = Json.fromJson(jsonNodeInner, MyObject.class);
        response.add(bst);
      }
    } else {
      MyObject mobj = Json.fromJson(jsonNode, MyObject.class);
      response.add(bst);
    }
  }
}
return response;
Run Code Online (Sandbox Code Playgroud)

json playframework-2.0

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

重新部署后的JPA Entitiy中的ClassCastException(Glassfish 3.1.2)

使用Glassfish 3.1.2取消部署和部署WebArchive(.war)时,我会产生奇怪的效果.

$ asadmin undeploy myWebApp; asadmin deploy target/myWebApp.war
Run Code Online (Sandbox Code Playgroud)

它正常部署,但是当我通过实体管理器获取实体bean时,它会抛出异常: [#|2012-12-11T15:26:09.772+0100|SEVERE|glassfish3.1.2|javax.enterprise.system.std.com.sun.enterprise.server.logging|_ThreadID=119;_ThreadName=Thread-2;|java.lang.ClassCastException: org.YourEntity cannot be cast to org.YourEntity

q.getSingleResult()调用中抛出异常.

  @PersistenceContext(unitName = "org.my-PU")
  private EntityManager em = Persistence.createEntityManagerFactory("org.my-PU").createEntityManager();
  ...
  public YourEntity findYourEntity() throws Exception {
      TypedQuery<YourEntity> q = em.createQuery("select ye from YourEntity ye", 
              YourEntity.class);
      return q.getSingleResult();
  }
Run Code Online (Sandbox Code Playgroud)

我在项目中使用以下JPA相关的依赖项:

<dependency>
  <groupId>org.eclipse.persistence</groupId>
  <artifactId>javax.persistence</artifactId>
  <version>2.0.0</version>
</dependency>

<dependency>
  <groupId>org.eclipse.persistence</groupId>
  <artifactId>eclipselink</artifactId>
  <version>2.0.2</version>
</dependency>

<dependency>
  <groupId>com.oracle</groupId>
  <artifactId>ojdbc6</artifactId>
  <version>11.1.0.7.0</version>
</dependency>
Run Code Online (Sandbox Code Playgroud)

当我重新启动glassfish时,不再发生异常.在取消部署/部署具有类似设置的.ear时,我从未见过这个问题.有没有人看到错误,知道如何克服它?这不是一个大问题,但很烦人.

jpa eclipselink oracle11g glassfish-3

5
推荐指数
1
解决办法
1983
查看次数

在wsdl中放置版本信息的位置?

我有一个Web服务,其定义位于wsdl文件中,模式位于外部xsd文件中.

在xsd文件中,有schema标记,它提供了一个属性'version',我可以用它来记录当前版本.wsdl格式(WSDL 1.1)中有类似的东西吗?如果没有,为了记录目的,存储通用版本属性的最佳位置是什么?

请记住,我不想实现向后兼容性,如http://blogs.iona.com/sos/20070410-WSDL-Versioning-Best-Practise.pdf中所述.我只想记录wsdl中的版本.

xml xsd wsdl web-services version

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

是否可以在Glassfish 3.1 WebServices中发布原始WSDL?

我开始使用WSDL并使用wsimport生成Java artificats.然后我实现了WebService并将其部署到glassfish 3.1.glassfish获取java元素并从这些元素中重新生成wsdl.

我可以说服glassfish将原始的wsdl发布到世界上,而不是"重新设计"的那些吗?谢谢!

wsdl web-services glassfish jax-ws glassfish-3

2
推荐指数
1
解决办法
676
查看次数