Jersey 2.26 app在Glassfish 5.0中返回错误的日期格式

时间:2017-12-09 20:41:24

标签: glassfish jersey-2.0 moxy

我试图格式化我的休息服务应用程序返回的日期,该日期在我的嵌入式开发环境中正常工作(使用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日期。

0 个答案:

没有答案