Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/325.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/clojure/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何为jackson数据类型hal注释记录_Java_Clojure_Jackson - Fatal编程技术网

Java 如何为jackson数据类型hal注释记录

Java 如何为jackson数据类型hal注释记录,java,clojure,jackson,Java,Clojure,Jackson,我尝试用Clojure复制上的示例,但序列化的输出不是预期的输出 带注释的记录序列化为普通映射,而不是hal结构 这就是名称空间,简化为问题所在 (ns-hal) (:gen类) (:导入(io.openapitools.jackson.dataformat.hal.annotation) 居里 链接 资源 嵌入式资源) (io.openapitools.jackson.dataformat.hal) HALMapper 哈林克 HALLink$Builder) (定义hal链接) [网址] (

我尝试用Clojure复制上的示例,但序列化的输出不是预期的输出

带注释的记录序列化为普通映射,而不是hal结构

这就是名称空间,简化为问题所在

(ns-hal)
(:gen类)
(:导入(io.openapitools.jackson.dataformat.hal.annotation)
居里
链接
资源
嵌入式资源)
(io.openapitools.jackson.dataformat.hal)
HALMapper
哈林克
HALLink$Builder)
(定义hal链接)
[网址]
(.build(HALLink$Builder.url)))
(defrecord^{Resource true}关联模型
[^String AssociatedProperty
^{Link true:tag HALLink}self])
(defrecord^{Resource true}模型
[^String modelProperty
^{Link true:tag HALLink}self
^{Link{:rel“associated”}:tag-HALLink}关系
^{EmbeddedResource true:标记AssociatedModel}associated])
(def型号(->型号
“测试”
(hal链接“/api/model/1”)
(hal链接“/api/assoc/1”)
(->关联模型
“关联模型”
(hal链接/api/assoc/1)
(定义hal映射器(HALMapper.))
(.writeValueAsString hal映射器模型)
预期结果:

{
    "_links": {
        "self": { "href": "https://..."},
        "rel:associated": { "href": "https://..."}
    },
    "_embedded": {
        "associated": {
            "_links": {
                "self": { "href": "https://..." }
            },
            "associatedProperty": "..."
        }
    },

实际结果:

{
  ":self": {
    "href": "/api/model/1",
    "templated": false
  },
  ":associated": {
    ":AssociatedProperty": "AssociatedModel",
    ":self": {
      "href": "/api/assoc/1",
      "templated": false
    }
  },
  ":relation": {
    "href": "/api/assoc/1",
    "templated": false
  },
  ":modelProperty": "Test"
}

乍一看,一切都是正确的。我注意到一件事,您注释了与EmbeddedResource关联的内容,而不是在引用中的Embedded。您是否介意发布deps.edn以便我可以在我的机器上启动它,或者使用本节末尾的命令检查您是否分配了正确的注释:乍一看,一切看起来都是正确的。我注意到一件事,您注释了与EmbeddedResource关联的内容,而不是在引用中的Embedded。您是否介意发布deps.edn以便我可以在我的机器上启动它,或者使用本节末尾的命令检查您是否分配了正确的注释: