More and more projects use the browser as a primary means of communicating with the program. The main drawback of this approach is that it requires the user to configure and maintain his own Web server, or else requires the program to come bundled with a Web server. Jetty is simple for both programmers and users, making it a good choice for bundled web server.
at first i didnt see the new for yet another web server but are they saying you can basically embed this in your app and use it to serve your web based app….
now that is a cool idea….and interesting…
Also Jetty is not new. It has been around for many years.
It is also a fast JSP/Servlet container. I’m not sure if they publicly say this anymore, but for quite a while JBoss was recommending Jetty over Tomcat because of its performance and small footprint.
What would be very cool is to have a very small (right…on gecko…right), cross platform version of Gecko that can easily work with this server.
Embed this–or make a plugin–for some HTML editors and it would be a great alternative to the builtin IE crap that some have and a great addition to cross platform editor that simply don’t have a preview in them.
Presumebly we can serve html out of memory from this server (not a coder so I don’t if that’s even possible) so there’s no need to spend time writing a temporary file on the HD everytime you make a change to the file. It should immediately render in the preview pane on your editor.
The only thing I can say is that dealing with which port to use can be a real pain in the a**. So, don’t use common ports like 8080! Most users don’t have a clue as to what a ‘port’ is, so you can’t ask them to pick one. So, the only solution would be to use a high number, let’s pick 50000 and try to bind to it. If it fails, keep incrementing the port until you have a successful bind. But, as I said, the issue is that if a piece of software has a statically bound port number, that could be a support nightmare because you may have just disabled another piece of software.
But then there is also the issue of ‘how do I tell the user how to get to the application”? What is the URL and port? Perhaps there should be a standard API for applications that use embedded webservers to handle this. But, there is a lot more than saying “hey, run this”.
Am I making any sense?
Um, if you bundle it, the user wouldn’t have to know jack. The application itself would be setup so that it was point to where it needed to. If you bundle it right it is as simple as saying “hey, run this.”
that is what i was thought was so cool, this may be a great tool overall…
especially with XML as well!
there have been times I would like to write a little program but I suck at programming and hate having to write a bazillion lines of code for something simple, now a quick web interface I can do and bundle it with its own server and cha ching, i am off and running…
We do this, and it works well… it is true that port issues can be a pain, but we just pick one arbitrarily, with the option for the user to change it, and that seems to work well. Those who understand can customize it, and those who don’t simply take the default.
A simple icon is provided for the user to launch the webbrowser to the appropriate location.
hmm, i wonder why they dont go gecko.
its whats powering the firefox and thunderbird.
basicly the gui and much of the internal code is written in xml and javascript for those two apps.
hell, lets embed gecko at the heart of a new desktop gui. most likely you can then write apps like you write webpages
need to debug? just open the files up in a editor. no need to recompile, just save and restart the app
this may even allow for fast saving of system state so that you can dump the desktops state to a file and then reload it on a diffrent machine O_O
hmm, one could even send the gui across a network, not every diffrent from say what X is able to do. ie, the app itself is running on one machine but the ui is sitting on your desktop
maybe we could even get a multimedia system going where when you connect diffrent extra boxes to the main one they send over a ui addon so that you can control them all from one ui on your tv with one remote
the posibilitys are more or less endless ones one starts to write stuff in parsed code rather then compiled code…
Gecko isn’t an actual server though. It’s a rendering engine.
Gecko is an application that parses html code, downloads images/css/javascript/other-media that the html references then renders this to the screen. Jetty, Apache, IIS and sambar are actual servers. They don’t render any code at all. They communicate with Gecko and Gecko does the rendering.
Think of it this way: Jetty is a bartender. You are gecko. You go, sit down at the bar and order a pint of X-beer from Jetty. Jetty says ok and gets your beer while still handling other requests for other beer. He gives you (you’re still gecko) the beer and you “render” the beer…that is drink it. The beer is xhtml and any referenced files.
Jetty is the beer server, Gecko is the beer drinker.
No matter how hard gecko tries, it can only get it’s own beer from it’s own home (IE, off the hard drive) whereas if it goes into a bar (say OSnews.com) the OSnews bartender (likely apache, another http server) gives the desired beer (webpage) to the customer, being you.
HTH, and I hope I made sense.
yes bit still, what jetty can do is server geckostyle code for remote access. i dont se how one needs jetty for local access tho. that is unless every app have its own jetty server and the desktop is basicly a browser
ie, desktop is served by a jetty server and parsed by a fullscreen browser. then inside that enviroment smaller brower windows are opened and connect to other jetty servers that deal with the individual apps.
ok so i may have missunderstood the point of the jetty server but i kinda get it now i think. and it should allow for remote access of app guis so that you can control it at one location while its running somwhere else.
HTH, and I hope I made sense.
Not entirely. I think you need to lay off the “rendering”