我试图格式化我的休息服务应用程序返回的日期,该日期在我的嵌入式开发环境中正常工作(使用https://github.com/akhikhl/gretty)。
我的一些网络服务将日期作为字符串返回,并且我在不同的环境中会有不同的结果。
在 Glassfish 5.0 中,我的日期为2017-12-05T21:37:24Z[UTC]
,而Jetty返回2017-12-05T21:37:24+01:00 (CEST)
,可从我的angularJS前端应用程序中解析。
我有以下 build.gradle 构建脚本,其中没有任何依赖项设置为提供。
/************* BUILD CONFIGURATION ***************/
buildscript {
repositories {
jcenter()
}
dependencies {
classpath 'org.akhikhl.gretty:gretty:2.0.0'
classpath 'org.hibernate:hibernate-gradle-plugin:5.2.11.Final'
}
}
// Apply the java plugin to add support for Java
apply plugin: 'java'
apply plugin: 'groovy'
apply plugin: 'war'
apply plugin: 'org.akhikhl.gretty'
apply plugin: 'org.hibernate.orm'
hibernate {
enhance {
enableDirtyTracking = true
}
}
gretty {
httpPort = 8080
contextPath = '/restapi'
fastReload = true
// ... many more properties
}
/************* RUNTIME CONFIGURATION ***************/
war.archiveName "restapi.war"
// In this section you declare where to find the dependencies of your project
repositories {
// Use 'jcenter' for resolving your dependencies.
// You can declare any Maven/Ivy/file repository here.
mavenCentral()
jcenter()
}
def jersey_version = 2.26
// In this section you declare the dependencies for your production and test code
dependencies {
// The production code uses the SLF4J logging API at compile time
compile 'org.slf4j:slf4j-api:1.7.21'
compile group: 'org.jboss.spec', name: 'jboss-javaee-7.0', version:'1.0.3.Final'
// groovy
compile 'org.codehaus.groovy:groovy-all:2.4.7'
// rest dependencies
compile 'javax.ws.rs:javax.ws.rs-api:2.0.1'
compile 'org.glassfish.jersey.containers:jersey-container-servlet:' + jersey_version
compile group: 'org.glassfish.jersey.media', name: 'jersey-media-moxy', version: jersey_version
compile group: 'org.glassfish.jersey.ext', name: 'jersey-entity-filtering', version: jersey_version
// id scrambling dependency
compile 'org.hashids:hashids:1.0.1'
compile group: 'org.apache.commons', name: 'commons-lang3', version: '3.7'
compile group: 'org.apache.commons', name: 'commons-collections4', version: '4.1'
compile group: 'commons-codec', name: 'commons-codec', version: '1.11'
// database
compile 'javax.el:el-api:2.2'
compile 'mysql:mysql-connector-java:5.1.18'
compile 'org.hibernate:hibernate-core:5.2.11.Final'
compile group: 'org.hibernate', name: 'hibernate-c3p0', version: '5.2.11.Final'
compile 'org.hibernate.javax.persistence:hibernate-jpa-2.1-api:1.0.0.Final'
compile 'org.hibernate:hibernate-entitymanager:5.2.11.Final'
}
我通过在我的(球衣)应用程序类中注册一个功能来尝试使用Jackson而不是MOXy,但是一旦我在我的应用程序中注册了任何功能,它就会在每个资源请求时中断导致404错误。这就是说我不知道是否使用Jackson或添加其他功能来操纵生成的日期对象(甚至返回时间戳而不是ISO日期。