Account Options

  1. Sign in
The old Google Groups will be going away soon, but your browser is incompatible with the new version.
Google Groups Home
« Groups Home
Server side engine - Options?
There are currently too many topics in this group that display first. To make this topic appear first, remove this option from another topic.
There was an error processing your request. Please try again.
flag
  13 messages - Collapse all  -  Translate all to Translated (View all originals)
The group you are posting to is a Usenet group. Messages posted to this group will make your email address visible to anyone on the Internet.
Your reply message has not been sent.
Your post was successful
 
From:
To:
Cc:
Followup To:
Add Cc | Add Followup-to | Edit Subject
Subject:
Validation:
For verification purposes please type the characters you see in the picture below or the numbers you hear by clicking the accessibility icon. Listen and type the numbers you hear
 
Pedro Alves  
View profile  
 More options Feb 15 2010, 4:37 pm
From: Pedro Alves <pmgal...@gmail.com>
Date: Mon, 15 Feb 2010 21:37:01 +0000
Local: Mon, Feb 15 2010 4:37 pm
Subject: Server side engine - Options?

Hello everyone. I've discussed this a while back but since we'd like to
have some proof of concept ready by the end of the week guess it's a
good time to bring this up again.

We need protovis server-side processing. Our main goal is to print the
visualizations. It's not the only use for it but we can leave that out
for now, as this is big enough of a deal for us.

We'd like some guide lines on how to start here. As I see it we have 2
options:

1 - Use a protovis java engine; I know that Jeffrey Heer has been
working on it and I saw references to that engine in this mailing list
but I wasn't able to find it. Not sure it's it's publicly available or
not...

2 - Use rhino on server side. Is this possible? Anyone ever did
something with it? I guess we should try to use
http://groups.google.com/group/envjs - anyone tried it?

Any feedback is greatly appreciated. It's not clear to us at the moment
which is better - 1 or 2.

Thanks

-pedro


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Jamie Love  
View profile  
 More options Feb 15 2010, 5:07 pm
From: Jamie Love <drjl...@gmail.com>
Date: Tue, 16 Feb 2010 11:07:02 +1300
Local: Mon, Feb 15 2010 5:07 pm
Subject: Re: Server side engine - Options?

There is one approach documented here:

http://code.google.com/p/protovis-js/issues/detail?id=41

I've not yet needed to use any mechanism for doing server side rendering. I
suspect there are a few options:

1/ The approach in the link above.
2/ Rhino server side rendering, assuming enough of the DOM exists server
side.
3/ Implement on server side JS enough of the DOM API to allow protovis to
'render' and have your implementation generate the correct SVG text.
4/ Convert protovis to generate SVG text in some other manner than the DOM
then just use it on the server in a server side JS renderer.

I've not tried the envjs approach, but it'd certainly be my first bet.


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Aureliano Calvo  
View profile  
 More options Feb 15 2010, 5:10 pm
From: Aureliano Calvo <aurelianoca...@gmail.com>
Date: Mon, 15 Feb 2010 19:10:00 -0300
Subject: Re: Server side engine - Options?

Another thing that came to my mind is to automatize in a browser running on
the server. May be a FFox plugin?


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Pedro Alves  
View profile  
 More options Feb 16 2010, 10:04 am
From: Pedro Alves <pmgal...@gmail.com>
Date: Tue, 16 Feb 2010 15:04:45 +0000
Local: Tues, Feb 16 2010 10:04 am
Subject: Re: Server side engine - Options?

Depending on a browser isn't an option really. I'll try 2/ 3/ (they are
the same, really).

We'll make some tests and cross fingers ;)

-pedro

On 02/15/2010 10:10 PM, Aureliano Calvo wrote:


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Robert Kosara  
View profile  
 More options Feb 16 2010, 10:27 am
From: Robert Kosara <rkos...@gmail.com>
Date: Tue, 16 Feb 2010 10:27:06 -0500
Local: Tues, Feb 16 2010 10:27 am
Subject: Re: Server side engine - Options?

One thing you could try is node.js (http://nodejs.org/). It uses Google's V8
JavaScript engine, which works standalone and is very fast. It doesn't have
SVG rendering, but you could write bindings to some SVG library (bindings to
C code seem to be pretty easy to do with V8). Hooking your bindings into the
Protovis code might just be an issue of faking the right global object.


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Jason Davies  
View profile  
 More options Feb 17 2010, 8:05 am
From: Jason Davies <ja...@jasondavies.com>
Date: Wed, 17 Feb 2010 05:05:24 -0800 (PST)
Local: Wed, Feb 17 2010 8:05 am
Subject: Re: Server side engine - Options?
I like the idea of protovis being able to generate raw SVG source
without relying on a DOM (suggestion no. 4 in your list), I imagine
this would be quite easy to do. Then rendering server-side would be a
case of using a JS interpreter e.g. Rhino, node.js or SpiderMonkey and
rendering the SVG into an image using a library such as Apache Batik.

--
Jason Davies

www.jasondavies.com

On Feb 15, 10:07 pm, Jamie Love <drjl...@gmail.com> wrote:


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Pedro Alves  
View profile  
 More options Feb 17 2010, 4:45 pm
From: Pedro Alves <pmgal...@gmail.com>
Date: Wed, 17 Feb 2010 21:45:36 +0000
Local: Wed, Feb 17 2010 4:45 pm
Subject: Re: Server side engine - Options?

This is interesting, can you elaborate a bit more on the idea of
removing the dom dependency? Especially the part where you imagine it to
be easy, cause seems to me that dom handling is a bit transverse to all
the code

-pedro

On 02/17/2010 01:05 PM, Jason Davies wrote:


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Jamie Love  
View profile  
 More options Feb 17 2010, 6:01 pm
From: Jamie Love <drjl...@gmail.com>
Date: Thu, 18 Feb 2010 12:01:12 +1300
Local: Wed, Feb 17 2010 6:01 pm
Subject: Re: Server side engine - Options?

Well, basically there are two points:

1/ Direct DOM manipulation can be slow. Various tests on the 'net indicate
that this may no longer be the case, but it definitely was a problem in a
project we did early last year. We ended up building the HTML as a string,
then setting a node's innerHtml to the string.

2/ Decoupling the building of the SVG DOM from the browser's DOM API means
that  rendering to a system without a DOM would only require that one write
an instance of the API which is right for you.

It seems quite possible that #1 is no longer relevant, so the only reason I
may suggest for removing the DOM dependency is that, well, tying the
beautiful protovis API to the browser's DOM API for rendering is
un-necessary, and in not doing so maybe we could open up protovis to other
situations easily.

If we made it build SVG strings, then you could use a server side JavaScript
engine to generate SVG images as files, and then just serve them. You could
also convert the protovis generated SVG to plain images via
http://xmlgraphics.apache.org/batik/.  You could embed Rhino in an
application and use it + protovis as a graph scripting engine.

The protovis code isn't actually much dependent on the DOM - the number of
lines of code that are used to actually generate/render SVG DOM nodes is
quite small so removing the dependency wouldn't be that hard.

Jamie


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Pedro Alves  
View profile  
 More options Feb 18 2010, 1:49 pm
From: Pedro Alves <pmgal...@gmail.com>
Date: Thu, 18 Feb 2010 18:49:29 +0000
Local: Thurs, Feb 18 2010 1:49 pm
Subject: Re: Server side engine - Options?

Ok, this is not looking good.

We'll keep testing it but we can't seem to make it work using extjs. It
just keeps blowing up on us.

I'll carry on with the tests, but it'd be great to hear feedback from
someone that tried this before.

otoh, if someone can point me to the java engine that would be awsome

-pedro

On 02/16/2010 03:04 PM, Pedro Alves wrote:


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Jamie Love  
View profile  
 More options Feb 18 2010, 1:54 pm
From: Jamie Love <drjl...@gmail.com>
Date: Fri, 19 Feb 2010 07:54:38 +1300
Local: Thurs, Feb 18 2010 1:54 pm
Subject: Re: Server side engine - Options?

What doesn't seem to work with extjs? what is the error?

Java engine for what? the javascript interpreter? Google for "rhino
javascript".


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Pedro Alves  
View profile  
 More options Feb 18 2010, 6:57 pm
From: Pedro Alves <pmgal...@gmail.com>
Date: Thu, 18 Feb 2010 23:57:00 +0000
Subject: Re: Server side engine - Options?

I've built a simple package that replicates the issues we're facing:
http://tinyurl.com/18r

Just do:

java -jar env-js.jar -debug -opt -1 test.js
or
java -jar env-js.jar -debug -opt -1 test-p31.js

The error on the second case is:

js: "protovis-d3.1.js", line 6477: uncaught JavaScript runtime
exception: TypeError: Cannot read property "$panel" from null
         at protovis-d3.1.js:6477
         at protovis-d3.1.js:4967
         at protovis-d3.1.js:6415
         at protovis-d3.1.js:4919
         at protovis-d3.1.js:4733
         at test-p31.js:33

I've tested with 2.6, same thing

Thanks

On 02/18/2010 06:54 PM, Jamie Love wrote:


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Pedro Alves  
View profile  
 More options Feb 19 2010, 5:48 pm
From: Pedro Alves <pmgal...@gmail.com>
Date: Fri, 19 Feb 2010 22:48:20 +0000
Local: Fri, Feb 19 2010 5:48 pm
Subject: Re: Server side engine - Options?

IT WORKS!

Kudos to Jamie! We can how tackle printing now! If someone wants the
details just ask.

(Now the only stuff left to fix is IE)

-pedro

On 02/18/2010 11:57 PM, Pedro Alves wrote:


 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
Discussion subject changed to "Fwd: Server side engine - Options?" by Jamie Love
Jamie Love  
View profile  
 More options Feb 20 2010, 5:07 am
From: Jamie Love <drjl...@gmail.com>
Date: Sat, 20 Feb 2010 23:07:15 +1300
Local: Sat, Feb 20 2010 5:07 am
Subject: Fwd: Server side engine - Options?

Pedro referenced getting it working under Rhino,

I did a bit of work thismorning on helping out -

After a bunch of fiddling, I've got a demo working. Attached is a (1.2Mb)
file that has all the components needed to use Rhino to generate SVG server
side into a SVG file (Read the README file included).

Enjoy!

  rhinotest.zip
1642K Download

 
You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
End of messages
« Back to Discussions « Newer topic     Older topic »