Skip to search.

Breaking News Visit Yahoo! News for the latest.

×Close this window

JSX-ideas · Ideas on Java Serialization for XML

The Yahoo! Groups Product Blog

Check it out!

Group Information

  • Members: 151
  • Category: XML
  • Founded: Jan 10, 2001
  • Language: English
? Already a member? Sign in to Yahoo!

Yahoo! Groups Tips

Did you know...
Real people. Real stories. See how Yahoo! Groups impacts members worldwide.

Messages

Advanced
Messages Help
Messages 1976 - 2008 of 2221   Oldest  |  < Older  |  Newer >  |  Newest
Messages: Show Message Summaries Sort by Date ^  
#1976 From: "Brendan Macmillan" <Brendan.Macmillan@...>
Date: Mon Mar 1, 2004 1:43 pm
Subject: Re: JSX and string serialization
egroups_yow
Send Email Send Email
 
Hi Bent,

I think Xrayrivet might suit your needs better. It is based on the JSX
engine, but does not alias Strings. The XML is also much simpler. I would
appreciate if you would try it out, and tell me what problems you have. I
can then iterate quickly, to make it work for you. How does that sound?
http://www.jsx.org/xrayrivet/xrayrivet.html

It does not mention your usage, but it sounds like a good match.

Warning: It is *very* alpha, but it's easy for me to improve it quickly
because the completeness of JSX is right there under the hood. It's more a
question of what to do first.


JSX:
You are right that Strings can't form circular references, but there can be
multiple references to the same String (as you saw). JSX needs to work this
way to be correct for serialization: Strings are aliased so that == works
correctly if there are multiple references to the same String.

BTW: here's how to tell if references are circular: keep a stack of the
objects above you (from root to the current node). A reference is circular
if and only if it refers to an object in that stack.

But I'm more interested in making useful products; and I think your usage of
JSX is a popular one.


Cheers,
Brendan

> Hello,
>
> I have tried out JSX2 and found the following minor annoyance. While I
> realize that it works like this because of issues caused by circular
> data structures (and for all I know, perhaps JOS _requires_ it to be
> like this), I still wanted to mention it.
>
> If I serialize an object graph that has a number of empty strings in
> it, then the first string will be serialized with its value and the
> rest will just idref it. This proves inconvenient when I later want to
> edit the XML files and input real strings. In particular, if I want to
> edit the one string that everyone else is referencing, I have to
> remember to move the reference string to somewhere else or all other
> strings will also have changed.
>
> It would have been much more edit-friendly if all strings were always
> serialized with their full values regardless of whether or not other
> strings in the object graph happen to have the same value.
>
> While the same argumentation holds for all other data types as well, I
> imagine it is non-trivial to determine if any given object would cause
> a loop. Strings, however, are guaranteed not to cause loops since they
> don't actually refer to other objects and they can't be subclassed to
> do so either.
>
> Again, I'm not sure if this approach would break other aspects of
> serialization. That's for you to know and for me to speculate over :-)
>
> Cheers
> Bent D
> --
> Bent Dalager - bcd@... - http://www.pvv.org/~bcd
>                                     powered by emacs
>

#1977 From: "Brendan Macmillan" <Brendan.Macmillan@...>
Date: Tue Mar 2, 2004 10:37 am
Subject: Re: JSX and string serialization
egroups_yow
Send Email Send Email
 
Hi Bent,

Note: I've cc'ed this to the list, because I think others may be interested.

> > I think Xrayrivet might suit your needs better. It is based on the JSX
> > engine, but does not alias Strings. The XML is also much simpler. I
would
> > appreciate if you would try it out, and tell me what problems you have.
I
> > can then iterate quickly, to make it work for you. How does that sound?
> > http://www.jsx.org/xrayrivet/xrayrivet.html
>
> I gave it a quick test run and found that I need more mappings than
> what it currently has. Specifically, it failed on primitives.

It should work on primitives (unless within an array - it doens't handle
arrays at the moment).

> I am using JSX as a component in a development tool we're using
> internally, in which we work with moderately complex data structures
> (they're basically deeply nested structures generated from IDL struct
> declarations). As it is, it will at least need to support primitives,
> nested objects and nested arrays for it to be of any immediate use. I
> don't think our already pressed developers will have much patience
> with xrayrivet if it proves to have a lot of problems. (I'd say that
> we could try it out in a quiet period, but there aren't any :-)

It doesn't support arrays at the moment.
Primitives should be OK - less of course, they are within an array :-)
Nested objects should be OK, as well as primitive values.

I need to ask: do you have *any* cyclic or multiple references (apart from
the Strings), that you need preserved?

The goal of the project is to be able to map any Java object graph to any
XML document, and
most XML documents don't provide a way to represent such references, and
introducing some mechanism (such as JSX's approach) would be an error in
terms of the XML document.

Arrays present two more problems for this goal:
(1). Arrays have a runtime length - but this can't always be recorded
explicitly, because many XML documents don't have an explicit length for
lists. In general, you also can't solve this by storing the lenght in a
separate mapping (or binding) document, because it can vary at runtime. The
"obvious" solution is to record the runtime length implicitly, in terms of
the components of the array. Just count them.

It's a little bit of work to implement this, because you have to do it for
each primitive type separately(mostly cut and paste tho, simulating
generics).

(2). Null values are needed by arrays of objects (for example, as <null/>) -
but many XML documents don't use a null element. The truth is, to map to
such a document, any null values found in the objects would be an error,
because there is nothing to map them to. Unfortunately, arrays of objects
quite commonly have an unused portion, of trailing nulls.

Of course, these considerations don't apply to your case, because you aren't
mapping to a target XML document. You just want to be able to enter Strings
by hand (IIUC)


> If, on the other hand, there is hope for getting it up to speed
> relatively easily, it is a somewhat more promising proposition. I am
> sure they _will_ appreciate the ease-of-edit they might be getting
> once it's ready for prime time. I've just finished a basic GUI-based
> editor for these data structures, though, and if they fall in love
> with that (I can only hope :-), they might not see the benefit of
> xrayrivet.
>
> I would personally like to have the "just use emacs" fallback though,
> so I'll try to pitch it to them and see what they say. An
> easier-to-edit XML format would very handy after all.
>
> How will licensing work for xrayrivet?

I'm not sure about this at the moment, but it would probably be the same as
for JSX.


> > It does not mention your usage, but it sounds like a good match.
> >
> > Warning: It is *very* alpha, but it's easy for me to improve it quickly
> > because the completeness of JSX is right there under the hood. It's more
a
> > question of what to do first.
>
> Is it "just" a question of writing the XSL scripts for it?

No - there is a declarative mapping that you write once, and which is used
for mapping in both directions (with XSL, you'd have to write two scripts).
Plus, the mapping is specifically for Java and XML, so it is much simpler
for this specific task. It's "XML databinding".

> Using XSL
> to morph JSX's output _does_ immediately strike me as a good idea, but
> I am somewhat wary of the complexity that might be involved in the XSL
> scripts. How readable do they become?

You can do it, but they aren't very readable. It depends on what you need to
do. There are example scripts in the JSX manual (towards the end) for
evolving classes; and other example for XML databinding on the front page
(www.jsx.org). You can get some kind of a sense of the complexity.

> > JSX:
> > You are right that Strings can't form circular references, but there can
be
> > multiple references to the same String (as you saw). JSX needs to work
this
> > way to be correct for serialization: Strings are aliased so that ==
works
> > correctly if there are multiple references to the same String.
>
> I can see that you don't want the serialize->deserialize cycle to
> break the == operator. Many data structures may rely on it after
> all. Reading between the lines (and extrapolating a bit), I am
> guesssing that I may get a long way if I put new String("") into my
> data structures rather than just "" ... I take it the refids only get
> inserted if string1==string2 and not necessarily if
> string1.equals(string2) ? (I build default instances of the IDL
> structs myself using reflection, so I control what initially goes into
> them.)

Yes. I almost sent you a follow up last night, suggesting that; I'm glad my
explanation was clear enough for you to be able to put it to use right away.
:-)

> I suppose I should just try it and see what happens :-)


Bottom line:  if you do fit within the target goal above, then I estimate
1-2 weeks maximum until it's ready to go. But if you need some references
(cyclic or multiple), then it's a conflict with the above goal, and much as
I regret it, I can't do it as part of this particular project.

So, let me know. :-)


Cheers,
Brendan

#1978 From: "Brendan Macmillan" <Brendan.Macmillan@...>
Date: Wed Mar 3, 2004 11:22 am
Subject: Re: JSX and string serialization
egroups_yow
Send Email Send Email
 
Hi Bent,

I'll reply to your other comments in a separate email.

> > Perhaps a low-risk way for you to proceed is for neither of us to commit
to
> > anything? If I implement something that you need, you could check it
(which
> > I think is pretty quick?), iterating around this loop until it does what
you
> > want.
>
> Yes, this seems quite doable.

Cool.

> > Questions:
> > 1. Why do you have arrays instead of collections? (are they of
primitives?)
>
> I have a number of IDL files defining structs containing, among other
> things, IDL sequences. These get converted into Java classes by an
> IDL-to-Java compiler that we have no control over. The end result uses
> arrays and not collections to represent sequences (this may be
> required by the CORBA-to-Java mapping specification for all I know). I
> cannot change these classes. It is these IDL-originated structures
> that we want to edit in order to build arbitrary CORBA objects to send
> across the network for testing purposes.
>
> The arrays we use can hold primitives and they can hold objects.
>
> The primary reason I am using JSX in the first place is that the IDL
> compiler doesn't support making the generated classes Serializable and
> since I can't change the resulting code myself (well, I could, but it
> would be a nightmare) I needed something that could serialize any old
> object.

Interesting, thanks for the background!

JSX is non-intrusive, which is a great strength when you have to (or prefer
to) not change existing code.

> As we discussed previously, I believe that I can relax that particular
> requirement to "any old object with a non-cyclic member hierarchy".
>
> As a matter of interest, if you _do_ pass a cyclic hierarchy to
> xrayrivet, how will it react? Will it identify the problem and throw
> an exception?

Hmm... it is driven by JSX internally, so that these would be passed as
references. At the moment, xrayrivet just ignores references, but for a
final implementation, it should thrown an exception (which would be
switchable on/off). IOW, this is polish, which is easy to deal with later.


> > 2. Do you have nulls in your object arrays? (even trailing)?
>
> There certainly can be. While our CORBA implementation doesn't support
> sending null values, there can be null values in the structures while
> the developer is building them and he might very well decide he wants
> to save such an unfinished structure to file to continue work on it
> later.

Just to be 100% clear pedantic (because it makes a big difference later): in
structures, yes; but would there be nulls in *arrays*?

> Now, truth be told, I am somewhat ambivalent about letting the
> developer put nulls into the structures since it would be a mistake to
> have them there when trying to send the object over CORBA (and that is
> the whole point after all). While we may decide to remove this
> possibility in the future (after the developers have some experience
> with using the tool), it will likely stay in for at least several
> weeks.

So you only need it for development. OK - we'll see how this goes.


Additional Requirements Summary:
- arrays of primitives
- arrays of Objects
- structs with nulls in them
- arrays of Objects, with nulls in them (?)


Cheers,
Brendan

#1979 From: "Brendan Macmillan" <Brendan.Macmillan@...>
Date: Wed Mar 3, 2004 11:39 am
Subject: Re: JSX and string serialization
egroups_yow
Send Email Send Email
 
Hi Bent,

> > BTW: The microsoft C# guy criticises Java's generics for being
> > inefficient in this way IIRC, but probably in many cases it just
> > doesn't matter. I mean, if you really want efficiency, use C. But
> > computers are just absurdly fast these days, so it usually makes
> > no discernable difference.
>
> I expect he's criticising the implicit casting that goes on in Java
> generics. In theory, casting is expensive, but I'm not convinced that
> this is the case in a single-inheritance system such as Java. Checking
> the correctness of a cast in Java should really be quite cheap if
> you're clever about it.

It's from the Artima article, he mentions casting, and also that the
inefficientcy of autoboxing:

# Anders Hejlsberg:
# For example, with Java generics, you don't actually get any of
# the execution efficiency that I talked about, because when you
# compile a generic class in Java, the compiler takes away the
# type parameter and substitutes Object everywhere. So the
# compiled image for List<T> is like a List where you use
# the type Object everywhere. Of course, if you now try
# to make a List<int>, you get boxing of all the ints.
# So there's a bunch of overhead there.
http://www.artima.com/intv/generics2.html


> Anyway, as you say, one really has to measure to find out for sure if
> it's an issue for any particular application. In your case, just
> copying the algorithm multiple times is probably a more effecient
> approach than profiling both solutions and then choosing one :-)

:-) Yes, I think so. I kind of like the possibility of discovering I'm
wrong, when I do profile it in future.


> > JSX and xrayrivet would be sold as separate products, so if you wanted
both,
> > you would need two licenses. If you only wanted JSX or xrayrivet, then
it
> > would be one license.
>
> As a practical issue, if you have xrayrivet won't you also effectively
> have JSX bundled with it? How would you prevent xrayrivet users from
> calling the JSX API directly? Does Java offer a solution for this in
> its security mechanisms (I don't think so, but am not entirely up to
> date on JAR features) or would you make a custom JSX (with everything
> having package scope in stead of public, for instance) for bundling
> that was effectively uncallable from the outside?

I had the idea of a making a single hidden version of JSX, that was
common to both, and having an extra wrapper class for JSX, with
public methods, that would only be present in the "JSX" jar.
This makes it easy to control at configuration time in ant. But it
does add an extra layer of complexity. Now that you raise it,
I think a runtime check is simpler and efficient (it's only checked
once per object graph). But I haven't given it much thought yet.

Thanks very much for thinking on this! :-)

hehehe I estimate that open source, without any worry at all
about security and business-related issues, is at least three
times easier than commercial software. If you aren't making
a reusable component, then it is three times easier again. And if
you forget ease of use, then it's yet another three times easier
(as esr claims often is the case). By this reckoning, such an
open source is 27 times easier than commercial software.


Cheers,
Brendan

#1980 From: <noreply@...>
Date: Mon Mar 8, 2004 9:20 am
Subject: [fmII] Java Serialization to XML 2.1.7 released (JSX 2 branch)
noreply@...
Send Email Send Email
 
This email is to inform you about the release of version '2.1.7' of 'Java
Serialization to XML' through freshmeat.net. All URLs and other useful
information can be found at

     http://freshmeat.net/projects/jsx/

The changes in this release are as follows:
A minor bug that duplicated the final close tag was  fixed.

Project description:
Java Serialization to XML (JSX) allows you to write and read any Java
object graph as XML data with one line of code. You can verify your
data and manipulate it with standard XML tools like DOM, JDOM, and
XSLT. JSX automatically creates a file format/wire protocol for all
Java objects, so that it is always up to date as the code evolves.
When you need backward compatibility, JSX provides the evolution
techniques of Java Object Serialization, and you can also modify the
XML directly. Unlike databinders, such as JAXB and Castor, no
explicit mapping is required, and JSX works for all objects.

Trove categories:
[Development Status  ] 5 - Production/Stable
[Environment         ] Console (Text Based), MacOS X, Other Environment,
Web Environment, Win32 (MS Windows)
[Intended Audience   ] Developers
[License             ] OSI Approved :: GNU General Public License (GPL),
Other/Proprietary License with Free Trial
[Programming Language] Java
[Topic               ] Communications, Database, Software Development,
Software Development :: Libraries, Software Development :: Libraries ::
Java Libraries, Software Development :: Object Brokering, System ::
Archiving, System :: Recovery Tools, Text Processing :: Markup :: XML

If you would like to cancel subscription to releases of this project,
login to freshmeat.net and choose 'home' from the personal menubar at the
top of the page. You'll be presented with a list of projects and
categories you're subscribed to in the right column, which you may cancel
by highlighting the project or category in question and clicking the
'delete' button.

Sincerely,
freshmeat.net

#1981 From: JSX-ideas@yahoogroups.com
Date: Tue Mar 9, 2004 12:38 pm
Subject: New poll for JSX-ideas
JSX-ideas@yahoogroups.com
Send Email Send Email
 
Enter your vote today!  A new poll has been created for the
JSX-ideas group:

How likely is it that you would
recommend JSX to a friend or colleague?
(on a scale of 1-10)

   o 1 not at all likely
   o 2
   o 3
   o 4
   o 5 neutral
   o 6
   o 7
   o 8
   o 9
   o 10 extremely likely


To vote, please visit the following web page:

http://groups.yahoo.com/group/JSX-ideas/surveys?id=1185488

Note: Please do not reply to this message. Poll votes are
not collected via email. To vote, you must go to the Yahoo! Groups
web site listed above.

Thanks!

#1982 From: JSX-ideas@yahoogroups.com
Date: Tue Mar 9, 2004 12:43 pm
Subject: New poll for JSX-ideas
JSX-ideas@yahoogroups.com
Send Email Send Email
 
Enter your vote today!  A new poll has been created for the
JSX-ideas group:

How do you use JSX?

   o Non-intrusive XML databinding
   o Upgrading persisted data (evolution)
   o Human-readable data (so you can see the object)
   o Distributing data over the network
   o Persistence (nested/recursive; and the not “Serializable”)
   o --other-- email us and we'll include it!   jsx@...


To vote, please visit the following web page:

http://groups.yahoo.com/group/JSX-ideas/surveys?id=1185490

Note: Please do not reply to this message. Poll votes are
not collected via email. To vote, you must go to the Yahoo! Groups
web site listed above.

Thanks!

#1983 From: "sridharan sri ramar" <shreedhar_13@...>
Date: Tue Mar 9, 2004 4:33 pm
Subject: Re: [JSX] New poll for JSX-ideas
shreedhar_13@...
Send Email Send Email
 


o 5 neutral

On Tue, 09 Mar 2004 JSX-ideas@yahoogroups.com wrote :
>
>Enter your vote today!  A new poll has been created for the
>JSX-ideas group:
>
>How likely is it that you would
>recommend JSX to a friend or colleague?
>(on a scale of 1-10)
>
>  o 1 not at all likely
>  o 2
>  o 3
>  o 4
>  o 5 neutral
>  o 6
>  o 7
>  o 8
>  o 9
>  o 10 extremely likely
>
>
>To vote, please visit the following web page:
>
>http://groups.yahoo.com/group/JSX-ideas/surveys?id=1185488
>
>Note: Please do not reply to this message. Poll votes are
>not collected via email. To vote, you must go to the Yahoo! Groups
>web site listed above.
>
>Thanks!
>
>
>
>
>
>
>
>------------------------ Yahoo! Groups Sponsor ---------------------~-->
>Buy Ink Cartridges or Refill Kits for your HP, Epson, Canon or Lexmark
>Printer at MyInks.com. Free s/h on orders $50 or more to the US & Canada.
>http://www.c1tracking.com/l.asp?cid=5511
>http://us.click.yahoo.com/mOAaAA/3exGAA/qnsNAA/2U_rlB/TM
>---------------------------------------------------------------------~->
>
>
>Yahoo! Groups Links
>
><*> To visit your group on the web, go to:
>      http://groups.yahoo.com/group/JSX-ideas/
>
><*> To unsubscribe from this group, send an email to:
>      JSX-ideas-unsubscribe@yahoogroups.com
>
><*> Your use of Yahoo! Groups is subject to:
>      http://docs.yahoo.com/info/terms/
>
>



Ramar Sridharan
shreedhar_13@...
sneha_1999@...
491797773747


#1984 From: "Brendan Macmillan" <Brendan.Macmillan@...>
Date: Wed Mar 10, 2004 2:19 am
Subject: Re: [JSX] New poll for JSX-ideas
egroups_yow
Send Email Send Email
 
Hi Ramar,

Thanks for your vote, but the idea is to go to the URL mentioned, and vote
by clicking on one of the boxes there. As the email says:

To vote, please visit the following web page:
http://groups.yahoo.com/group/JSX-ideas/surveys?id=1185488


many thanks,
Brendan
----- Original Message -----
From: "sridharan sri ramar" <shreedhar_13@...>
To: <JSX-ideas@yahoogroups.com>
Sent: Wednesday, March 10, 2004 3:33 AM
Subject: Re: [JSX] New poll for JSX-ideas


>
> o 5 neutral
>
> On Tue, 09 Mar 2004 JSX-ideas@yahoogroups.com wrote :
> >
> >Enter your vote today!  A new poll has been created for the
> >JSX-ideas group:
> >
> >How likely is it that you would
> >recommend JSX to a friend or colleague?
> >(on a scale of 1-10)
> >
> >   o 1 not at all likely
> >   o 2
> >   o 3
> >   o 4
> >   o 5 neutral
> >   o 6
> >   o 7
> >   o 8
> >   o 9
> >   o 10 extremely likely
> >
> >
> >To vote, please visit the following web page:
> >
> >http://groups.yahoo.com/group/JSX-ideas/surveys?id=1185488
> >
> >Note: Please do not reply to this message. Poll votes are
> >not collected via email. To vote, you must go to the Yahoo! Groups
> >web site listed above.
> >
> >Thanks!
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >Yahoo! Groups Links
> >
> >
> >
> >
> >
>
>
>
>
> Ramar Sridharan
> shreedhar_13@...
> sneha_1999@...
> 491797773747
>

#1985 From: "Brendan Macmillan" <Brendan.Macmillan@...>
Date: Fri Mar 12, 2004 1:35 pm
Subject: Free academic version of JSX
egroups_yow
Send Email Send Email
 
There has been a great deal of demand for JSX, from students who
simply can't afford JSX, and find that 30 days isn't enough to
complete a project.

To help solve this, we are trying out an "academic version" of JSX,
that does not expire after 30 days, and which is only available to
students (and academics):
       www.jsx.org/academic

This version is free (as in beer/no charge) - but you may only use it
for academic purposes, and you may not distribute it. (If friends or
colleagues are interested, tell them they can get their own, from the
website: www.jsx.org).

I would much appreciate feedback on this - whether it helps or not,
any problems you have with it, or with the idea of it.


Here's the URL again:
    www.jsx.org/academic


Please be warned: it's slow to respond at the moment.  It's a PHP
script, but they are not usually that slow... I think our hoster may
be running extra slowly at the moment for some reason.  Anyway,
please don't give up, just because it seems too slow :-)


Cheers,
Brendan

#1986 From: <noreply@...>
Date: Mon Mar 15, 2004 8:32 am
Subject: [fmII] Java Serialization to XML 2.1.8 released (Default branch)
noreply@...
Send Email Send Email
 
This email is to inform you about the release of version '2.1.8' of 'Java
Serialization to XML' through freshmeat.net. All URLs and other useful
information can be found at

     http://freshmeat.net/projects/jsx/

The changes in this release are as follows:
The JSX comment at the start of the XML is now much  shorter and less
intrusive, and a free academic  version is now available.

Project description:
Java Serialization to XML (JSX) allows you to write and read any Java
object graph as XML data with one line of code. You can verify your
data and manipulate it with standard XML tools like DOM, JDOM, and
XSLT. JSX automatically creates a file format/wire protocol for all
Java objects, so that it is always up to date as the code evolves.
When you need backward compatibility, JSX provides the evolution
techniques of Java Object Serialization, and you can also modify the
XML directly. Unlike databinders, such as JAXB and Castor, no
explicit mapping is required, and JSX works for all objects.

Trove categories:
[Development Status  ] 5 - Production/Stable
[Environment         ] Console (Text Based), MacOS X, Other Environment,
Web Environment, Win32 (MS Windows)
[Intended Audience   ] Developers
[License             ] Free For Educational Use, Other/Proprietary License
with Free Trial
[Programming Language] Java
[Topic               ] Communications, Database, Software Development,
Software Development :: Libraries, Software Development :: Libraries ::
Java Libraries, Software Development :: Object Brokering, System ::
Archiving, System :: Recovery Tools, Text Processing :: Markup :: XML

If you would like to cancel subscription to releases of this project,
login to freshmeat.net and choose 'home' from the personal menubar at the
top of the page. You'll be presented with a list of projects and
categories you're subscribed to in the right column, which you may cancel
by highlighting the project or category in question and clicking the
'delete' button.

Sincerely,
freshmeat.net

#1987 From: "nicolascorreard" <nicolas_correard@...>
Date: Tue Mar 16, 2004 9:52 am
Subject: why always rely on Externalizable
nicolascorreard
Send Email Send Email
 
Hello,
I've been using a trial version of JSX, as part of an IT project here
in Paris.
First thought: great! It does many things that other tools like
skaringa were not able to do.
Then, we changed most of our objects to Externalizable to speed up
serialization. The XML we got was completely different: one big ugly
byte array. Suprising, but logical: since we broke down the whole
serialization all the way to the native type.

Hence, my suggestion: provide a way to ignore Externalizable,
in the constructors for example:
ObjectWriter out = new ObjectWriter(false);
ObjectReader in = new ObjectReader(false);

This is critical to us: we cannot use JSX as is. If you provide us
with a fix to this, we'll use JSX and buy a site (maybe enterprise if
I convince my boss) distribution license.

Thanks.

#1988 From: "Brendan Macmillan" <Brendan.Macmillan@...>
Date: Tue Mar 16, 2004 10:47 am
Subject: Re: [JSX] why always rely on Externalizable
egroups_yow
Send Email Send Email
 
Hi Nicolas,

I'm assuming that you are also using JOS, or else there'd be no point in
implementing Externalizable, since you don't want it for JSX?

To ensure I understand: you want
     - JOS to use Externalizable, but
     - JSX to not use it?

I'm reluctant to add in non-standard features like this (even if a useful
hack), because simplicity is a very important value behind the project. I
don't want to clutter up the API - that happened with a previous version of
JSX.

I could do a one-off hack for you, which would solve your specific problem,
while avoiding my API concern.

How does that sound?


Cheers,
Brendan
----- Original Message -----
From: "nicolascorreard" <nicolas_correard@...>
To: <JSX-ideas@yahoogroups.com>
Sent: Tuesday, March 16, 2004 8:52 PM
Subject: [JSX] why always rely on Externalizable


> Hello,
> I've been using a trial version of JSX, as part of an IT project here
> in Paris.
> First thought: great! It does many things that other tools like
> skaringa were not able to do.
> Then, we changed most of our objects to Externalizable to speed up
> serialization. The XML we got was completely different: one big ugly
> byte array. Suprising, but logical: since we broke down the whole
> serialization all the way to the native type.
>
> Hence, my suggestion: provide a way to ignore Externalizable,
> in the constructors for example:
> ObjectWriter out = new ObjectWriter(false);
> ObjectReader in = new ObjectReader(false);
>
> This is critical to us: we cannot use JSX as is. If you provide us
> with a fix to this, we'll use JSX and buy a site (maybe enterprise if
> I convince my boss) distribution license.
>
> Thanks.
>
>
>
>
> Yahoo! Groups Links
>
>
>
>
>
>

#1989 From: "Brendan Macmillan" <Brendan.Macmillan@...>
Date: Thu Mar 18, 2004 4:52 pm
Subject: Re: [JSX] why always rely on Externalizable
egroups_yow
Send Email Send Email
 
How did the jar go that I sent you?

Did you get it?


Brendan
----- Original Message -----
From: "nicolascorreard" <nicolas_correard@...>
To: <JSX-ideas@yahoogroups.com>
Sent: Tuesday, March 16, 2004 8:52 PM
Subject: [JSX] why always rely on Externalizable


> Hello,
> I've been using a trial version of JSX, as part of an IT project here
> in Paris.
> First thought: great! It does many things that other tools like
> skaringa were not able to do.
> Then, we changed most of our objects to Externalizable to speed up
> serialization. The XML we got was completely different: one big ugly
> byte array. Suprising, but logical: since we broke down the whole
> serialization all the way to the native type.
>
> Hence, my suggestion: provide a way to ignore Externalizable,
> in the constructors for example:
> ObjectWriter out = new ObjectWriter(false);
> ObjectReader in = new ObjectReader(false);
>
> This is critical to us: we cannot use JSX as is. If you provide us
> with a fix to this, we'll use JSX and buy a site (maybe enterprise if
> I convince my boss) distribution license.
>
> Thanks.
>
>
>
>
> Yahoo! Groups Links
>
>
>
>
>
>

#1990 From: "Brendan Macmillan" <Brendan.Macmillan@...>
Date: Thu Mar 18, 2004 5:10 pm
Subject: fresh release: xrayrivet 0.2
egroups_yow
Send Email Send Email
 
New release: xrayrivet 0.2

DOWNLOAD: http://www.jsx.org/xrayrivet/xrayrivet.html

Xrayrivet's format is much less verbose that JSX, and more like conventional
XML:

<C java-class='C'>
     <a java-class='A'>
         <i java-class='D'/>
     </a>
     <b i='200' j='100' java-class='B'/>
</C>

Java that represented by the above XML:
public class C {
      A a = new A();
      B b = new B();
}
class A {
      Object i = new D();
}
class B {
      int i = 200;
      int j = 100; // will map to same tag as above, to test namespacing
}
class D {
}

THIS RELEASE
This release covers most Java objects, now including arrays of object,
nulls, arrays of primitives.

It also writes references in a more XML-friendly way than does JSX:
(1)    multiple references to the same object are rendered as new instances
of that object (like a copy)
(2)    cyclic references are detected and provoke an Exception, stating this
situation

DOWNLOAD: http://www.jsx.org/xrayrivet/xrayrivet.html


Note: classes that implement their own serial format (eg Date) will not be
handled correctly. You can use the memento idea to represent them with
another class (see
http://www.jsx.org/APP1_databinding/index.html, under "Value
Representation").

#1991 From: <noreply@...>
Date: Mon Mar 22, 2004 2:25 pm
Subject: [fmII] Java Serialization to XML 2.1.9 released (Default branch)
noreply@...
Send Email Send Email
 
This email is to inform you about the release of version '2.1.9' of 'Java
Serialization to XML' through freshmeat.net. All URLs and other useful
information can be found at

     http://freshmeat.net/projects/jsx/

The changes in this release are as follows:
The trial version now works within application servers.

Project description:
Java Serialization to XML (JSX) allows you to write and read any Java
object graph as XML data with one line of code. You can verify your
data and manipulate it with standard XML tools like DOM, JDOM, and
XSLT. JSX automatically creates a file format/wire protocol for all
Java objects, so that it is always up to date as the code evolves.
When you need backward compatibility, JSX provides the evolution
techniques of Java Object Serialization, and you can also modify the
XML directly. Unlike databinders, such as JAXB and Castor, no
explicit mapping is required, and JSX works for all objects.

Trove categories:
[Development Status  ] 5 - Production/Stable
[Environment         ] Console (Text Based), MacOS X, Other Environment,
Web Environment, Win32 (MS Windows)
[Intended Audience   ] Developers
[License             ] Free For Educational Use, Other/Proprietary License
with Free Trial
[Programming Language] Java
[Topic               ] Communications, Database, Software Development,
Software Development :: Libraries, Software Development :: Libraries ::
Java Libraries, Software Development :: Object Brokering, System ::
Archiving, System :: Recovery Tools, Text Processing :: Markup :: XML

If you would like to cancel subscription to releases of this project,
login to freshmeat.net and choose 'home' from the personal menubar at the
top of the page. You'll be presented with a list of projects and
categories you're subscribed to in the right column, which you may cancel
by highlighting the project or category in question and clicking the
'delete' button.

Sincerely,
freshmeat.net

____________________________| Advertising |____________________________
Take a free Linux tutorial

presented by Daniel Robbins, President and CEO
of GenToo technologies. Click to learn everything from fundamentals to
system administration.



http://ads.osdn.com/?ad_id=1475&alloc_id=3642&op=click
____________________________| Advertising |____________________________

#1992 From: <noreply@...>
Date: Mon Mar 29, 2004 9:41 am
Subject: [fmII] Java Serialization to XML 2.1.9.1 released (Default branch)
noreply@...
Send Email Send Email
 
This email is to inform you about the release of version '2.1.9.1' of 'Java
Serialization to XML' through freshmeat.net. All URLs and other useful
information can be found at

     http://freshmeat.net/projects/jsx/

The changes in this release are as follows:
More helpful instructions were added to the trial version.

Project description:
JSX exchanges data between Java and XML. It is 100% automatic for all
possible objects. It just works.

Trove categories:
[Development Status  ] 5 - Production/Stable
[Environment         ] Console (Text Based), MacOS X, Other Environment,
Web Environment, Win32 (MS Windows)
[Intended Audience   ] Developers
[License             ] Free For Educational Use, Other/Proprietary License
with Free Trial
[Programming Language] Java
[Topic               ] Communications, Database, Software Development,
Software Development :: Libraries, Software Development :: Libraries ::
Java Libraries, Software Development :: Object Brokering, System ::
Archiving, System :: Recovery Tools, Text Processing :: Markup :: XML

If you would like to cancel subscription to releases of this project,
login to freshmeat.net and choose 'home' from the personal menubar at the
top of the page. You'll be presented with a list of projects and
categories you're subscribed to in the right column, which you may cancel
by highlighting the project or category in question and clicking the
'delete' button.

Sincerely,
freshmeat.net

#1993 From: andreas.voigt-heinemeyer@...
Date: Tue Mar 30, 2004 4:28 am
Subject: Andreas Voigt-Heinemeyer/HBG/MS/PHILIPS is out of the office.
andreas.voigt-heinemeyer@...
Send Email Send Email
 
I will be out of the office starting  03/27/2004 and will not return until
04/11/2004.

#1994 From: "Brendan Macmillan" <Brendan.Macmillan@...>
Date: Sun Apr 4, 2004 1:26 pm
Subject: Re: why always rely on Externalizable
egroups_yow
Send Email Send Email
 
Hello Nicolas,

I sent you a jar with what you needed, and a couple of followup
emails.

But I haven't had a reply from you.  That was all a few weeks ago.

Perhaps this reply on the email list will reach you.


Cheers,
Brendan

--- In JSX-ideas@yahoogroups.com, "nicolascorreard"
<nicolas_correard@u...> wrote:
> Hello,
> I've been using a trial version of JSX, as part of an IT project
here
> in Paris.
> First thought: great! It does many things that other tools like
> skaringa were not able to do.
> Then, we changed most of our objects to Externalizable to speed up
> serialization. The XML we got was completely different: one big
ugly
> byte array. Suprising, but logical: since we broke down the whole
> serialization all the way to the native type.
>
> Hence, my suggestion: provide a way to ignore Externalizable,
> in the constructors for example:
> ObjectWriter out = new ObjectWriter(false);
> ObjectReader in = new ObjectReader(false);
>
> This is critical to us: we cannot use JSX as is. If you provide us
> with a fix to this, we'll use JSX and buy a site (maybe enterprise
if
> I convince my boss) distribution license.
>
> Thanks.

#1995 From: <noreply@...>
Date: Wed Apr 7, 2004 8:39 am
Subject: [fmII] Java Serialization to XML 2.1.9.2 released (Default branch)
noreply@...
Send Email Send Email
 
This email is to inform you about the release of version '2.1.9.2' of 'Java
Serialization to XML' through freshmeat.net. All URLs and other useful
information can be found at

     http://freshmeat.net/projects/jsx/

The changes in this release are as follows:
A trailing reset is now handled correctly, enabling JSX to work with
Prevayler.

Project description:
Java Serialization to XML (JSX) allows users to write and read any
plain old Java object graph as XML data with one line of code. The
data can be verified and manipulated with standard XML tools like
DOM, JDOM, and XSLT. JSX automatically creates a file format/wire
protocol for all Java objects, so that it is always up to date as the
code evolves. It also provides the evolution techniques of Java
Object Serialization for back-compatibility, and you can also modify
the XML directly. Unlike databinders such as JAXB and Castor, no
explicit mapping is required, and JSX works for all objects.

Trove categories:
[Development Status  ] 5 - Production/Stable
[Environment         ] Console (Text Based), MacOS X, Other Environment,
Web Environment, Win32 (MS Windows)
[Intended Audience   ] Developers
[License             ] Free For Educational Use, Other/Proprietary License
with Free Trial
[Programming Language] Java
[Topic               ] Communications, Database, Software Development,
Software Development :: Libraries, Software Development :: Libraries ::
Java Libraries, Software Development :: Object Brokering, System ::
Archiving, System :: Recovery Tools, Text Processing :: Markup :: XML

If you would like to cancel subscription to releases of this project,
login to freshmeat.net and choose 'home' from the personal menubar at the
top of the page. You'll be presented with a list of projects and
categories you're subscribed to in the right column, which you may cancel
by highlighting the project or category in question and clicking the
'delete' button.

Sincerely,
freshmeat.net

____________________________| Advertising |____________________________
Overclock Your Connection: OSDN Broadband

Get unsurpassed Speed of 6.0/768 at and unrivaled price--$99.95 a month.
Plus, get static 8 IPs, shell access, 6 free months of Web hosting and
more.
Click here !

http://ads.osdn.com/?ad_id=2567&alloc_id=6189&op=click
____________________________| Advertising |____________________________

#1996 From: "Mark van der Kraan" <m.van.der.kraan@...>
Date: Wed Apr 7, 2004 12:56 pm
Subject: AspectJ, JSX, Prevayler
linksspringer
Send Email Send Email
 
Hi,

Here is a nice way to use JSX as replacement for JOS
for existing sources & binaries. It uses AspectJ to
intercept JOS constructors, and replace them with
equivalent JSX constructors. Code below.
AspectJ: http://eclipse.org/aspectj/

I tested this with Prevayler (http://www.prevayler.org/wiki.jsp).
Prevayler uses JOS to persist in-memory objects.
This worked like a charm, generating XML instead of binary.
WARNING: this needs the latest JSX 2.1.9.2 to work!

Question to you all: what do you think of the ability to replace JOS
with JSX in existing libraries? Would this be useful to you?
Any more ideas for further testing?

Cheers,
Mark

=======================================================

package aspectJSX;

import JSX.*;
import java.io.*;

public aspect SerializationAspect {

   ObjectOutputStream around( OutputStream out )
     throws   java.io.IOException :
   call(ObjectOutputStream.new(OutputStream))
   && args (out)  {
    System.out.println("Replace ObjectOutputStream with ObjectWriter");
    ObjectWriter ow = new ObjectWriter(out);
    ow.setPrettyPrint(false);
    ow.setAutoClose(false);
    return ow;
   }

   ObjectInputStream around( InputStream in )
     throws java.io.IOException :
   call(ObjectInputStream.new(InputStream))
   && args (in)  {
    System.out.println("Replace ObjectInputStream with ObjectReader");
    return new ObjectReader(in);
   }

}

#1997 From: "Craig Ganoe" <cganoe@...>
Date: Fri Apr 9, 2004 2:12 am
Subject: 1.0.x source/jar availability?
cganoe
Send Email Send Email
 
Is the JSX 1.0.x source and/or the most recent jar available somewhere?  I have
some old
software that's using 1.0.1, but I get the impression that there is at least a
1.0.7.4 version
that is newer.  I'd at least like to make sure I'm using the latest version so
that I have any
bugfixes, etc.  I can't seem to find it for download anywhere though.

If someone could let me know where it is available or e-mail me the source/jar,
it would
be greatly appreciated.

Thanks.

Craig

#1998 From: "Brendan Macmillan" <Brendan.Macmillan@...>
Date: Fri Apr 9, 2004 3:47 am
Subject: Re: [JSX] 1.0.x source/jar availability?
egroups_yow
Send Email Send Email
 
Hi Craig,

We are up to JSX 2.1 now, and JSX 1.0.x isn't supported anymore.

You might be thinking of the GNU website, which has a link to the jsx.org
homepage for JSX1.0.7.4 - but we don't host it and in fact have never hosted
any version of JSX 1.0.x at this website. I've written to them twice, asking
them to correct it, but received no reply.

So, I guess this dea link will continue to confuse people every so often.


Cheers,
Brendan
----- Original Message -----
From: "Craig Ganoe" <cganoe@...>
To: <JSX-ideas@yahoogroups.com>
Sent: Friday, April 09, 2004 12:12 PM
Subject: [JSX] 1.0.x source/jar availability?


> Is the JSX 1.0.x source and/or the most recent jar available somewhere?  I
have some old
> software that's using 1.0.1, but I get the impression that there is at
least a 1.0.7.4 version
> that is newer.  I'd at least like to make sure I'm using the latest
version so that I have any
> bugfixes, etc.  I can't seem to find it for download anywhere though.
>
> If someone could let me know where it is available or e-mail me the
source/jar, it would
> be greatly appreciated.
>
> Thanks.
>
> Craig
>
>
>
>
>
>
> Yahoo! Groups Links
>
>
>
>
>
>

#1999 From: "Mike Goldwater" <m_h_goldwater@...>
Date: Fri Apr 9, 2004 8:43 am
Subject: RE: [JSX] 1.0.x source/jar availability?
m_h_goldwater
Send Email Send Email
 
Hi,

With Brendan's permission, I could send you a JSX1.0.7.3.jar. I have not
updated as this version suits my purposes very well up to now.



Regards

Mike
~~~~~~~~~~~~~~
Mike Goldwater
Auric Hydrates Ltd
26, Sandal Road
New Malden
Surrey KT3 5AP
UK
Tel and Fax:  +44 (020) 8949 0353
      Mobile:  +44 07956 359001





>From: "Craig Ganoe" <cganoe@...>
>Reply-To: JSX-ideas@yahoogroups.com
>To: JSX-ideas@yahoogroups.com
>Subject: [JSX] 1.0.x source/jar availability?
>Date: Fri, 09 Apr 2004 02:12:53 -0000
>
>Is the JSX 1.0.x source and/or the most recent jar available somewhere?  I
>have some old
>software that's using 1.0.1, but I get the impression that there is at
>least a 1.0.7.4 version
>that is newer.  I'd at least like to make sure I'm using the latest version
>so that I have any
>bugfixes, etc.  I can't seem to find it for download anywhere though.
>
>If someone could let me know where it is available or e-mail me the
>source/jar, it would
>be greatly appreciated.
>
>Thanks.
>
>Craig
>
>

_________________________________________________________________
It's fast, it's easy and it's free. Get MSN Messenger today!
http://www.msn.co.uk/messenger

#2000 From: "Craig Ganoe" <cganoe@...>
Date: Fri Apr 9, 2004 2:55 pm
Subject: Re: [JSX] 1.0.x source/jar availability?
cganoe
Send Email Send Email
 
My apologies if this isn't the place to talk about 1.0.x.  I was under the
impression
that 1.0.x was GPL'd open source, and just wanted to make sure I have the
best/latest bugfixed source/release.

Thanks for any info you or anyone else can provide.

--- In JSX-ideas@yahoogroups.com, "Brendan Macmillan" <Brendan.Macmillan@i...>
wrote:
> Hi Craig,
>
> We are up to JSX 2.1 now, and JSX 1.0.x isn't supported anymore.
>
> You might be thinking of the GNU website, which has a link to the jsx.org
> homepage for JSX1.0.7.4 - but we don't host it and in fact have never hosted
> any version of JSX 1.0.x at this website. I've written to them twice, asking
> them to correct it, but received no reply.
>
> So, I guess this dea link will continue to confuse people every so often.
>
>
> Cheers,
> Brendan
> ----- Original Message -----
> From: "Craig Ganoe" <cganoe@y...>
> To: <JSX-ideas@yahoogroups.com>
> Sent: Friday, April 09, 2004 12:12 PM
> Subject: [JSX] 1.0.x source/jar availability?
>
>
> > Is the JSX 1.0.x source and/or the most recent jar available somewhere?  I
> have some old
> > software that's using 1.0.1, but I get the impression that there is at
> least a 1.0.7.4 version
> > that is newer.  I'd at least like to make sure I'm using the latest
> version so that I have any
> > bugfixes, etc.  I can't seem to find it for download anywhere though.
> >
> > If someone could let me know where it is available or e-mail me the
> source/jar, it would
> > be greatly appreciated.
> >
> > Thanks.
> >
> > Craig
> >
> >
> >
> >
> >
> >
> > Yahoo! Groups Links
> >
> >
> >
> >
> >
> >

#2001 From: <noreply@...>
Date: Mon Apr 19, 2004 7:03 am
Subject: [fmII] Java Serialization to XML 2.1.9.3 released (Default branch)
noreply@...
Send Email Send Email
 
This email is to inform you about the release of version '2.1.9.3' of 'Java
Serialization to XML' through freshmeat.net. All URLs and other useful
information can be found at

     http://freshmeat.net/projects/jsx/

The changes in this release are as follows:
The program now works with Tomcat and other application  servers more
conveniently by using a more appropriate  classloader for the objects
being deserialized. For  back-compatibility, it will first try the
contextClassLoader  followed by the classloader that loaded it (which
usually works  for Tomcat). This behaviour can overridden by
explicitly  passing the desired classloader to the ObjectReader
constructor.

Project description:
Java Serialization to XML (JSX) allows users to write and read any
plain old Java object graph as XML data with one line of code. The
data can be verified and manipulated with standard XML tools like
DOM, JDOM, and XSLT. JSX automatically creates a file format/wire
protocol for all Java objects, so that it is always up to date as the
code evolves. It also provides the evolution techniques of Java
Object Serialization for back-compatibility, and you can also modify
the XML directly. Unlike databinders such as JAXB and Castor, no
explicit mapping is required, and JSX works for all objects.

Trove categories:
[Development Status  ] 5 - Production/Stable
[Environment         ] Console (Text Based), MacOS X, Other Environment,
Web Environment, Win32 (MS Windows)
[Intended Audience   ] Developers
[License             ] Free For Educational Use, Other/Proprietary License
with Free Trial
[Programming Language] Java
[Topic               ] Communications, Database, Software Development,
Software Development :: Libraries, Software Development :: Libraries ::
Java Libraries, Software Development :: Object Brokering, System ::
Archiving, System :: Recovery Tools, Text Processing :: Markup :: XML

If you would like to cancel subscription to releases of this project,
login to freshmeat.net and choose 'home' from the personal menubar at the
top of the page. You'll be presented with a list of projects and
categories you're subscribed to in the right column, which you may cancel
by highlighting the project or category in question and clicking the
'delete' button.

Sincerely,
freshmeat.net

____________________________| Advertising |____________________________
Overclock Your Connection: OSDN Broadband

Get unsurpassed Speed of 6.0/768 at and unrivaled price--$99.95 a month.
Plus, get static 8 IPs, shell access, 6 free months of Web hosting and
more.
Click here !

http://ads.osdn.com/?ad_id=2567&alloc_id=6189&op=click
____________________________| Advertising |____________________________

#2002 From: <noreply@...>
Date: Mon May 3, 2004 3:08 pm
Subject: [fmII] Java Serialization to XML 2.1.9.4 released (Default branch)
noreply@...
Send Email Send Email
 
This email is to inform you about the release of version '2.1.9.4' of 'Java
Serialization to XML' through freshmeat.net. All URLs and other useful
information can be found at

     http://freshmeat.net/projects/jsx/

The changes in this release are as follows:
To restore compatibility with other XML tools, the XML declaration has
been re-introduced.

Project description:
Java Serialization to XML (JSX) allows users to write and read any
plain old Java object graph as XML data with one line of code. The
data can be verified and manipulated with standard XML tools like
DOM, JDOM, and XSLT. JSX automatically creates a file format/wire
protocol for all Java objects, so that it is always up to date as the
code evolves. It also provides the evolution techniques of Java
Object Serialization for back-compatibility, and you can also modify
the XML directly. Unlike databinders such as JAXB and Castor, no
explicit mapping is required, and JSX works for all objects.

Trove categories:
[Development Status  ] 5 - Production/Stable
[Environment         ] Console (Text Based), MacOS X, Other Environment,
Web Environment, Win32 (MS Windows)
[Intended Audience   ] Developers
[License             ] Free For Educational Use, Other/Proprietary License
with Free Trial
[Programming Language] Java
[Topic               ] Communications, Database, Software Development,
Software Development :: Libraries, Software Development :: Libraries ::
Java Libraries, Software Development :: Object Brokering, System ::
Archiving, System :: Recovery Tools, Text Processing :: Markup :: XML

If you would like to cancel subscription to releases of this project,
login to freshmeat.net and choose 'home' from the personal menubar at the
top of the page. You'll be presented with a list of projects and
categories you're subscribed to in the right column, which you may cancel
by highlighting the project or category in question and clicking the
'delete' button.

Sincerely,
freshmeat.net

____________________________| Advertising |____________________________
Get Broadband for Power Users-Only $99 a Month

OSDN Broadband offers you the fastest 6.0/768 connection plus 8 email
addresses and static IPs, shell access, free Web hosting & free
SourceForge.net subscription . Click to learn more.


http://ads.osdn.com/?ad_id=2567&alloc_id=6189&op=click
____________________________| Advertising |____________________________

#2003 From: "Brendan Macmillan" <Brendan.Macmillan@...>
Date: Mon May 17, 2004 3:11 am
Subject: Free (open source) version available
egroups_yow
Send Email Send Email
 
A free (open source) version of JSX1.0.7.4 is available at:

http://www.csse.monash.edu.au/~bren/JSX/


Cheers,
Brendan Macmillan

#2005 From: <noreply@...>
Date: Mon May 17, 2004 9:20 am
Subject: [fmII] Java Serialization to XML 2.2.0 released (Default branch)
noreply@...
Send Email Send Email
 
This email is to inform you about the release of version '2.2.0' of 'Java
Serialization to XML' through freshmeat.net. All URLs and other useful
information can be found at

     http://freshmeat.net/projects/jsx/

The changes in this release are as follows:


Project description:
Java Serialization to XML (JSX) transparently writes and reads any
Java object graph as XML data with one line of code. Once in XML,
your data is human-readable and accessible with standard tools such
as XSLT and XQuery. JSX dynamically creates a file format/wire
protocol for your objects, so it is always up-to-date as your code
evolves. When you need backward compatibility, JSX provides the
evolution techniques of Java Object Serialization, and you can also
modify the XML directly. Unlike databinders such as JAXB, no explicit
mapping is required. There are no constructor requirements, no
getter/setter requirements, and no requirements for particular
interfaces to be implemented, nor classes extended; JSX works for all
objects.

Trove categories:
[Development Status  ] 5 - Production/Stable
[Environment         ] Console (Text Based), MacOS X, Other Environment,
Web Environment, Win32 (MS Windows)
[Intended Audience   ] Developers
[License             ] Other/Proprietary License with Free Trial
[Programming Language] Java
[Topic               ] Communications, Database, Software Development,
Software Development :: Libraries, Software Development :: Libraries ::
Java Libraries, Software Development :: Object Brokering, System ::
Archiving, System :: Recovery Tools, Text Processing :: Markup :: XML

If you would like to cancel subscription to releases of this project,
login to freshmeat.net and choose 'home' from the personal menubar at the
top of the page. You'll be presented with a list of projects and
categories you're subscribed to in the right column, which you may cancel
by highlighting the project or category in question and clicking the
'delete' button.

Sincerely,
freshmeat.net

____________________________| Advertising |____________________________
Expanded Training Offered at USENIX Annual Tech Conference (USENIX'04)

Join your peers for 6 full days of training by industry experts. Linux &
Open Source, Security, Networking, SysAdmin topics & more.
June 27-July 2, 2004, Boston, MA

www.usenix.org/usenix/os
____________________________| Advertising |____________________________

#2008 From: "Brendan Macmillan" <Brendan.Macmillan@...>
Date: Mon May 31, 2004 10:05 am
Subject: Re: [JSX] Benefits of JSX
egroups_yow
Send Email Send Email
 
Dear Astroturfer,

JSX works 100% for Java versions 1.2, 1.3, 1.4 and 1.5 - not just Java 1.4.
That is, it sets final fields, does not need a no-arg constructor for all
versions of J2SE and J2EE.

JSX works for all Serializable classes now and in future - and by reusing
tested and proven code of Jave Object Serialization
(java.io.ObjectOutputStream), it inherits their reliability. It also works
for classes that are not Serializable, with no further requirements.

Other XML/object tools not only use converters, adapters and delegate for
each and every such class on an ad hoc basis, but they *require* you to
write, test and debug converters for. That's a lot of code for the over 700
such standard classes in Java alone - and testing and debugging take time,
and usually some real world testing is required to be sure of reliability.
Of course, there are many other classes in other libraries that would also
need code written to make them work. This approach duplicates existing code
in the standard Java classes, and seems a disappointing misdirection of
effort.

Finally, for those making long-term corporate decisions the maturity of a
product matters very much indeed. JSX is tested, proven and mature. Several
rewrites were required before understanding completely what is really needed
in a such a product, and reaching the present form. After several years of
use in industry, it is a very solid product.


The above information is also available on the JSX homepage:
     www.jsx.org


Cheers,
Brendan Macmillan
--
+61 3 9515 7575 (if calling from US, replace "+" with "011")

Messages 1976 - 2008 of 2221   Oldest  |  < Older  |  Newer >  |  Newest
Add to My Yahoo!      XML What's This?

Copyright © 2010 Yahoo! Inc. All rights reserved.
Privacy Policy - Terms of Service - Guidelines NEW - Help