[ 
https://issues.apache.org/jira/browse/CXF-7004?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15415341#comment-15415341
 ] 

Sergey Beryozkin commented on CXF-7004:
---------------------------------------

Not sure if it is fixable. The low level JsonMapObjectReaderWriter does convert 
it to String but it checks there whether to add double quotes or not and it 
only adds them if it is String or Enum. Typically non String objects are 
Integer. Might make sense to restrict to 'instanceof Number' with any other 
custom objects converted to String though, will check later on...

For now though convert .toString() manually  

> Custom DateTime property is not serialized to JSON properly
> -----------------------------------------------------------
>
>                 Key: CXF-7004
>                 URL: https://issues.apache.org/jira/browse/CXF-7004
>             Project: CXF
>          Issue Type: Bug
>          Components: JAX-RS Security
>    Affects Versions: 3.1.7
>            Reporter: Behrang Saeedzadeh
>
> The following code:
> {code}
> import test.CryptoUtils; // loads an RSA private key from file
> import org.apache.cxf.rs.security.jose.jwk.JsonWebKey;
> import org.apache.cxf.rs.security.jose.jwk.JsonWebKeys;
> import org.apache.cxf.rs.security.jose.jwk.JwkUtils;
> import java.io.FileOutputStream;
> import java.io.IOException;
> import java.nio.file.Paths;
> import java.security.interfaces.RSAPrivateKey;
> import java.time.LocalDateTime;
> public class TestCase {
>     public static void main(String[] args) throws IOException {
>         final RSAPrivateKey privateKey = 
> CryptoUtils.loadRsaPrivateKey(Paths.get("a-private-key.der"));
>         final JsonWebKey jwk = JwkUtils.fromRSAPrivateKey(privateKey, 
> "RSA-OAEP-256");
>         jwk.setKeyId("test");
>         jwk.setKeyProperty("created-at", LocalDateTime.now());
>         final JsonWebKeys webKeys = new JsonWebKeys(jwk);
>         JwkUtils.jwkSetToJson(webKeys, new FileOutputStream("test.jwk.json"));
>     }
> }
> {code}
> Produces the following malformed JSON:
> {code}
> {
>   "keys": [
>     {
>       "kty": "RSA",
>       "alg": "RSA-OAEP-256",
>       "n": "...",
>       "d": "...",
>       "p": "...",
>       "q": "...",
>       "dp": "...",
>       "dq": "...",
>       "qi": "...",
>       "kid": "test",
>       "created-at": 2016
>       -0
>       8
>       -10
>       T11: 0
>       1: 51.036
>     }
>   ]
> }
> {code}
> Basically the `LocalDateTime` is not converted to `String` before getting 
> serialized to JSON.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to