Jason Timmins wrote:

I don't know how to do that but, if you're telling me I can call Java
methods straight from .NET without the delays associated with starting-up
the Java VM, then I'd gladly try that.

There're samples of how to set up a simple web service that can do the trick. There are several ways to set this up, the easiest already mentioned by Jeremias Maerki.

The only reason I have to use Saxon is that Microsoft don't have an XSLT v2
implementation. They seem focused on their LINQ technology at the moment so
the word is 'no XSLT v2 for now.'

There are two alternatives to Saxon (though I do believe that Saxon is the most mature currently): AltovaXML free commandline xslt2 processor and Colin's Gestalt XSLT 2.0 processor, open source, built with Eiffel. In my experience, the latter has the shortest startup time when run as an executable. But embedding an executable inside a web app can be hard and non-trivial to do correctly.

That said, Saxon is the only one that comes "natively" as a .NET processor.

Your story about MS not doing XSLT 2.0 is not right. They have spread the word about half a year back that they started development for an XSLT 2.0 processor. It is only a matter of time. In Michael Kay's words, it takes about 1 to 2 years to built a stable processor, depending on the team and the money available of course (meaning: it won't be there tomorrow).

It's plain and simple, even when you have limited knowledge of Java. And you don't need to exit the JVM anymore. This has two main benefits: you gain speed (perhaps a lot!) and your application becomes easier.

No doubt but I have to stay with .NET as the rest of the site is .NET-based.

Without wanting to sound harsh: that's really not a good reason to stick to a certain technique, you're locking yourself in, keeping the better options out. Using a technique that best suits its purpose or that's best at a certain job is a much more viable option then trying to bend the iron by hands...

And while your at it, you might as well upgrade to a newer version of FOP, since yours is really ancient.

Ahh, well, I've been holding-off upgrading because my XSL design tool,
XSLFastm uses FOP 0.20.5 to render to PDF as a preview. I thought it only
logical to stick with 0.20.5 until XSLFast switches to using the latest
version of FOP. I can't have my development tool showing one thing and what
gets printed being something different. That's one headache I can live
without.

Also, in my current environment I'd have to translate FOP 0.9X into a .NET
assembly and I'm not looking forward to that.


If you change your mind on that last subject: I just spoke to XSLFast's Jens Thiemann, you may have heard of him, and he assured me that it is only days before they will start shipping a new version with full support for FOP 0.93 and up. And if you contact him directly using [EMAIL PROTECTED], he can give you an early copy of the product.


Oh man, if only it were that simple. I've never written code the cleans
itself up so well as this app! I 'dispose' of every object and data
structure I use. I can say with reasonable certainty, it's not crappy code
in my .NET world. :-)

Well, that's good to hear. Of course, any .NET application uses external libraries, so if it isn't your code for sure, it can be something else. In the past I've successfully used DevPartner by Compuware (then Numega). I don't want to sing the praises of DevPartner here as then I should make a sound comparison to other products as well. However, I mention it because it gives very good per-object, per reference analysis of what's been kept in memory (and a lot more, like how long each method takes, how often it's called etc) and how much memory each object takes.

But it doesn't come free, worse yet, I don't believe it is very cheap... yet it can save you tons of hours of work which makes such a product worthwhile (or any of its competitors of course).

Hope these hints help you a bit further,

Cheers,
-- Abel Braaksma

PS: you can check the Saxon list for some mentioning of memory leaks. There aren't many and most are fixed, but it may give you a hint. Make sure to use the utter latest edition of Saxon as it is constantly improved for performance and bugs.

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to