That would work if he was parsing the JSON manually, which is itself an extremely complex thing to do. It sounds like he's using Jackson—and rightly so. I'm not entirely sure how to do this with Jackson, but I help out with the development over there from time to time, and I can ask the mailing list for feedback when I get home tonight.
Nick
On Apr 1, 2014, at 10:07 AM, Matt Sicker wrote:
> Keep a stack of {'s and pop them when you get a }. Like a deterministic
> pushdown automaton.
>
>
> On 1 April 2014 07:45, Gary Gregory <[email protected]> wrote:
> I have a local patch for LOG4J2-583 to have the Log4j TCP and UDP socket
> servers unmarhsal XML log events.
>
> This is "easy" for XML because when you have a stream of bytes and you know
> its encoding, you can look for the end of an event by looking for its closing
> tag: </Event>. Right now, my XML processing code, looks for the end tag and
> feeds JAXB a substring from the buffer. Easy. Done.
>
> Not so much with JSON. You cannot use the same hack, there is no end tag. All
> you have is an "end of object" closing bracket "}" which looks the same as
> the closing marker for all other objects.
>
> So it looks like I would need to hook in a little deeper into a JSON
> unmarshalling framework to extract each JSON log events as I see them.
>
> Any thoughts here?
>
> Gary
>
> --
> E-Mail: [email protected] | [email protected]
> Java Persistence with Hibernate, Second Edition
> JUnit in Action, Second Edition
> Spring Batch in Action
> Blog: http://garygregory.wordpress.com
> Home: http://garygregory.com/
> Tweet! http://twitter.com/GaryGregory
>
>
>
> --
> Matt Sicker <[email protected]>
smime.p7s
Description: S/MIME cryptographic signature
