jSeamless - UI Abstraction for Java

Discussions

News: jSeamless - UI Abstraction for Java

  1. jSeamless - UI Abstraction for Java (88 messages)

    jSeamless 1.0 Beta 3 is now available for download. The structure of the API is similar to that of AWT/Swing but has no explicit ties to any other framework. One of the major benefits to jSeamless is the ability to create entire web sites (like the jSeamless site) entirely in Java. The reference implementation of the framework utilizes Flex but there are many other implementations in the works (HTML, Swing, OpenGL, J2ME, etc). Though this framework is still in beta stages it offers significant possibilities to Java developers who are sick of the J2EE approach, or simply do not want to spend their time trying to glue HTML, JavaScript, CSS, JSPs, Servlets, JSF components, etc. together to make a web site. Finally, the ability to develop your UI once and then deploy it as a web application and/or a desktop application without writing any additional code should be enough to get any developer or manager interested. Visit the web site at http://www.jseamless.org for further details, documentation, examples, and tutorials.

    Threaded Messages (88)

  2. nice widgets[ Go to top ]

    Looks interesting and nice widgets although a bit heavy (mouse is lagging and not without errors during entering the site the second time). Is it revolutionary in comparison to Google Web Toolkit? Does this framework deal with different versions of flash player (minimal requirements)?
  3. re: nice widgets[ Go to top ]

    The heavy aspect is a result of using Flash/Flex. This is only the reference implementation of jSeamless though. There will also be an HTML implementation that could be used instead. Definitely revolutionary in comparison to GWT. See this response about GWT. The minimum requirements for the Flash implementation is version 9, but one of the great things about flash is its ability to update itself if you are running an older version.
  4. good luck[ Go to top ]

    You are talking about windows of course, other platforms may be not as 'up-to-speed' with versioning as windows platform, what about mobile devices? I am curious how the html implementation will be looking like. Can this product be unit tested? What about in- and out- of container testing? IDE? I am wondering how/whether those points are addressed by your product. Anyway, I wish you good luck with jSeamless, if the html implementation will be as rich as jsf/ajax application, having as nice widgets as you have now for Flex and the development speed can be comparable to Seam/Rails, it may actually be very interesting product...
  5. re: good luck[ Go to top ]

    Flash 9 can be run on Windows, Linux, and Mac. As far as mobile devices, I don't know of any that currently run flash, but this is where other implementations of the framework come in. There is currently an endeavor to create a J2ME implementation of jSeamless so the same UI you created for the web site using Flash can also be utilized for cell-phones. Unit testing should be extremely easy since the framework consists of pure beans...you can programmatically create and manipulate the entire UI in a headless server. There are plans to create a testing implementation of jSeamless to allow UI testing via an XML or JUnit rather than having to test via some web-based testing framework that requires a server running or something like JFCUnit.
  6. Flex and Socket communication[ Go to top ]

    Hallo, Flash/Flex is really one heavy aspect. I am behind firewall which is not administrated by my self. so opening a socket connection from my browser to any internet location is blocked. The result of this is a empty page when I browse to Jseamless site.
  7. Re: Flex and Socket communication[ Go to top ]

    It's actually not too bad when your server isn't being hammered. :) I'm surprised that you're unable to connect to the site. Would you mind giving it another try today? It initially tries to connect via Socket and if it fails it should start using HTTP communication instead. Let me know if you still have any problems with it today.
  8. OpenLaszlo?[ Go to top ]

    This seems very similar in concept to OpenLaszlo, at least from a high level. What would be the advantages of using this framework of OpenLaszlo considering it is more mature?
  9. Re: OpenLaszlo?[ Go to top ]

    The biggest difference between jSeamless and OpenLaszlo is that jSeamless is all about writing code in Java, not XML. ;) I've done some work with OpenLaszlo in the past when it was only doing Flash generation and it was a good idea, but I really disliked the structure (I was considering creating a jSeamless implementation using it). Further, jSeamless offers a lot of dynamics and effects that you simply can't do (or at least couldn't when I was using it) with OpenLaszlo. In jSeamless every Component has a play(Effect) method that you can create an Effect and simply pass it to that method it will invoke the effect on it. Further, via Styles you can set add, remove, show, hide, etc effects that are automatically invoked when the action occurs. For example, if I wanted a component to fade out when I hide it I could simply do something like: Fade fade = new Fade(); fade.setDuration(1000); fade.setAlphaFrom(1.0f); fade.setAlphaTo(0.0f); myComponent.getStyle().setHideEffect(fade); Now when I call: myComponent.setVisible(false); It will fade out.
  10. So if OpenLaszlo is coded in XML and jSeamless is coded in Java, that is significant. While the OpenLaszlo folks haven't gone down this path, you could deliver their *.lzx XML files to the client, and let the client interpret that. This is what an HTML browser does. And just as there are HTML browsers written in many languages, so could a OpenLaszlo-interpetting browser. No ecosystem is locked out -- .NET, Java, C, TclTk, etc. could all be used to write "LZX Browsers".
  11. So if OpenLaszlo is coded in XML and jSeamless is coded in Java, that is significant.

    While the OpenLaszlo folks haven't gone down this path, you could deliver their *.lzx XML files to the client, and let the client interpret that. This is what an HTML browser does. And just as there are HTML browsers written in many languages, so could a OpenLaszlo-interpetting browser. No ecosystem is locked out -- .NET, Java, C, TclTk, etc. could all be used to write "LZX Browsers".
    I think I mentioned previously that I had looked into actually creating a wrapper around Laszlo, but honestly I hated the architecture they define. Further, it seems overly complicated to accomplish the tasks and REALLY buggy for their DHTML implementation (and I don't need them for the Flash implementation...I already have something better...in my opinion). Going with something like Dojo Toolkit or another JavaScript client-side wrapper would make the transition much easier, but still I fear it might not be up to the task.
  12. Docs about architecture[ Go to top ]

    I Think your project have future. I've used Laszlo for a rich interface, I like the XML but don´t like program in JavaScript. I Really like the concept behind WPF (.net), because you have the XML and program with C#. I am interesting in how you solve the communication between flex and java so you can program events on JAVA. And at last ,it may be useful if you publish some architecture docs, if you want the project to grow up
  13. Re: Docs about architecture[ Go to top ]

    I am considering writing an XML style UI generation extension to jSeamless (sort of like Thinlet) that would generate jSeamless code at runtime (or potentially compile time) but that would be down the road a bit. I think there are some benefits to using XML to define a UI but at the same time I never want to depart from the core of jSeamless being Java code. I definitely need to take some time to write some architectural docs as some of the things I'm doing are very unique and may be very interesting to other projects. Before I get to version 1.0 I hope to have all of that ready to go and freely available. However, like I've already stated, it's still early development and it still has a long way to go. So for anyone that really thinks this is a great idea...help! :)
  14. Last I checked, none of this client side stuff has anything to do with nor improves in any significant way the process of writing Java applications or the end result to the user. It DOES however improve the bottom line of companies who want to pile their latest APPLET technology on top of Java as if Java were somehow the new Powerbuilder. Get a life. You can script Flash or flex or whatever you want with Javascript and it has no integration value with Java. NONE. If this stuff was soooo Good and sooo Java then expose your API via the Java APIs and we will write you some FINE applets. FINE ones I tell ya!
  15. oh I forgot to say[ Go to top ]

    I think your project have future
  16. ok dude I gotta better one[ Go to top ]

    Wait for it.... Wait... You web interface you go away no We GO FAT CLIENT! Client SERVER! You hear? You forget web!!!
  17. Tal Dega, your argument I believe is invalid. It DOES improve the process of writing Java applications....well, rather gives you the ability to write Java applications where before they would be written via HTML, JavaScript, and/or Flash. jSeamless gives you the possibility to write your entire web application in Java and you don't have to touch a single line of HTML, JavaScript, CSS, Flash, Flex, JSPs, and on and on for eternity. jSeamless abstracts all the extra garbage away. Are you a Java programmer? Wouldn't you like to spend all your time programming in Java rather than the majority of your time writing client-side junk like HTML and JavaScript?
  18. Copy Of Echo2?[ Go to top ]

    It might be me being suspicious, but it looks like it's a copy of Echo2. Even the names of the online examples are almost the same. I might be wrong (I apologize if that is so), but if it is indeed a copy, I think credit should be given to the Echo2 developer(s). The main difference is that jSeamless seems to have multiple implementations (flex/opgengl) whereas Echo2 is only implemented for DHTML. But the design is the same as jSeamless, it is certainly possible to create a flex or ogl implementation for Echo2.
  19. re: Copy Of Echo2?[ Go to top ]

    There are definite similarities between Echo2 and jSeamless. I actually didn't know about Echo2 when I started jSeamless but almost abandoned the project when I found it. I spent quite a bit of time working with Echo2 and finally decided it wasn't quite as powerful as what I wanted to create. Further, I really believe that a UI abstraction is the right way to go for the future of Java UI creation. Most of the similarities are due to standard concepts in UI design as far as naming and examples go. I did look in-depth at many different approaches and got inspiration from different frameworks, so there is definitely some credit due to Echo2 if only early proof that it can be done. I've considered the idea of making the HTML implementation a wrapper around Echo2 since it already has the majority of features I would need.
  20. Re: Copy Of Echo2?[ Go to top ]

    I spent quite a bit of time working with Echo2 and finally decided it wasn't quite as powerful as what I wanted to create.
    Can you elaborate somewhat more on this?
  21. Re: Copy Of Echo2?[ Go to top ]

    I spent quite a bit of time working with Echo2 and finally decided it wasn't quite as powerful as what I wanted to create.

    Can you elaborate somewhat more on this?
    Absolutely. The most notable reason why I decided to create "yet another framework" was not because I couldn't do what I wanted to do with other frameworks out there, but because I couldn't do everything I wanted to do with ONE framework out there. Echo2 is similar to the jSeamless Flex implementation (or the upcoming HTML implementation), but Echo2 is specifically designed for web applications, jSeamless is not. Now I'm going to give some personal opinions here, and take them for what they're worth, but don't get upset at me for stating them. ;) First, I think Echo2 is probably the best alternative I've seen to jSeamless web implementations. One of my big frustrations while using it was the client/server communication model caused an hourglass to appear in the browser when it was talking to the server, even if it was supposed to be background loading. Further, the API seemed a little over-complicated for accomplishing tasks and if I recall I had some issues looking at the code because the developer(s) were not native English speaking (German if I recall). However, for native German speaking people that might be a benefit. ;) Finally, the developer studio seemed WAY overpriced when there are comparable systems for other frameworks that are free or at least under $100.
  22. Re: Copy Of Echo2?[ Go to top ]

    Finally, the developer studio seemed WAY overpriced when there are comparable systems for other frameworks that are free or at least under $100.
    The Echo2 framework is free. Just not the Eclipse Plugin. I am not sure there is a plugin that is free that compares. And that is how Tod chose to support his development. You most certainly do not need the plugin to develop with Echo2.
  23. Re: Copy Of Echo2?[ Go to top ]

    Finally, the developer studio seemed WAY overpriced when there are comparable systems for other frameworks that are free or at least under $100.

    The Echo2 framework is free. Just not the Eclipse Plugin. I am not sure there is a plugin that is free that compares. And that is how Tod chose to support his development. You most certainly do not need the plugin to develop with Echo2.
    Yes, and I don't think there was anything wrong with that decision, it seems a bit high to me. There are various comparable (in my opinion) plugins for creating Swing UIs that are free. Do a google search and I'm sure you'll find quite a few (there are some good ones among the plethora of bad).
  24. Re: Copy Of Echo2?[ Go to top ]

    Finally, the developer studio seemed WAY overpriced when there are comparable systems for other frameworks that are free or at least under $100.

    The Echo2 framework is free. Just not the Eclipse Plugin. I am not sure there is a plugin that is free that compares. And that is how Tod chose to support his development. You most certainly do not need the plugin to develop with Echo2.


    Yes, and I don't think there was anything wrong with that decision, it seems a bit high to me. There are various comparable (in my opinion) plugins for creating Swing UIs that are free. Do a google search and I'm sure you'll find quite a few (there are some good ones among the plethora of bad).
    I mean for "web" work. I use Eclipse VE and Netbeans daily for Swing. Pretty much anything else is not free or not alive or not good.
  25. Re: Copy Of Echo2?[ Go to top ]

    Finally, the developer studio seemed WAY overpriced when there are comparable systems for other frameworks that are free or at least under $100.

    The Echo2 framework is free. Just not the Eclipse Plugin. I am not sure there is a plugin that is free that compares. And that is how Tod chose to support his development. You most certainly do not need the plugin to develop with Echo2.


    Yes, and I don't think there was anything wrong with that decision, it seems a bit high to me. There are various comparable (in my opinion) plugins for creating Swing UIs that are free. Do a google search and I'm sure you'll find quite a few (there are some good ones among the plethora of bad).

    I mean for "web" work.

    I use Eclipse VE and Netbeans daily for Swing. Pretty much anything else is not free or not alive or not good.
    That's valid, but the correlation between "web work" and any other UI development should be lost with jSeamless. What I mean by that, is that we could create an IDE similar to all the other WYSIWYG editors for Swing, but for jSeamless and it renders to Swing for easy runtime validation. However, when development is done you can still deploy it anywhere you want. This removes the need to start and stop a server every time you want to test functionality...this will make rapid development of web applications....more rapid. ;)
  26. Re: Copy Of Echo2?[ Go to top ]

    That's valid, but the correlation between "web work" and any other UI development should be lost with jSeamless. What I mean by that, is that we could create an IDE similar to all the other WYSIWYG editors for Swing, but for jSeamless and it renders to Swing for easy runtime validation. However, when development is done you can still deploy it anywhere you want. This removes the need to start and stop a server every time you want to test functionality...this will make rapid development of web applications....more rapid. ;)
    Understand. But creating an IDE to do this will be a lot of work. Much more than the API. But that is typical of UI development. Addtionally, Echo and Echo2 a different APIs. I highly suspect this was due to having to deal with AJAX. Echo was VERY much like Swing. I was able to convert a project from Echo[1] to Swing in about an hour. The only thing that caused me issues was the reversal of row/col in the table model. That is not possible today with Echo2. It is still very Swingish for the most part. I'd love to see it all work.
  27. Does it has a Future ??[ Go to top ]

    I think the idea is great but.... there are many great idea's out there.. My concern: who are the sponsors and companies behind the development ? If this isn't well organized, it will slowly die.. Look at GWT. Once up in a time there is(was) Java2Script Pacemaker... Awesome tool... but still not widely used and accepted because of sponsors... Same same counts for Echo 2 if you ask me. I build an application with it.. but I got into all kind of problems.. I thought: "maybe I have to wait another year so it matures more"... It's now more then a year ago and they just came out with a new update.... It's a pitty because I love their programming model.. much better then GWT if you ask me. It's funny because GWT started about a year ago and if you see how it hit of and activity in their forum(s) and on other sites... Reallly amazingggg... Good luck
  28. Re: Does it has a Future ??[ Go to top ]

    There are various companies that I've talked to that are interested in jSeamless as well as a few open-source projects. However, this is still pretty early development and only a few people have shown interest in developing for it. What you see on the web site is the work of one person...me. I don't intend for it to stay that way though. I would love to have other experienced developers helping in development of the project and expanding the number of implementations for it. The future of this project is defined by those that see it and either decide to help the project or pass it by. If you see anything broken or lacking I only ask that you point it out so it can be fixed. If you have the ability and desire to fix it yourself then all the better. A revolutionary idea such as this definitely runs the risk of never catching on if nobody is willing to jump out and use it in the first place. However, if there's enough interest in the project it could change the way Java UI development is done on a massive scale.
  29. I don't know, nobody can know it. Among many java frameworks, personally I prefer Wings (http://www.j-wings.org), and I think it is superior than Echo2. I have never seen this framework before, I'll take a look. One question: it is possible to apply some html templates to use custom stylesheet? Bye.
  30. I've tried jWings but it seemed extremely slow for me (maybe it was server load). There are plans to write support for XML defined styles or CSS files that can be parsed at runtime to define styles. In jSeamless you can programmatically define styles via the Style object. The Style object can have parent Styles and be applied to one or many components. This is one significant advantage over Swing as you can create a single Style and apply it to several components instead of having to apply style properties individually to components.
  31. Re: Does it has a Future ??[ Go to top ]

    Since the integration of AJAX, it's really, really fast! The demo server is hosted in germany. Maybe that's the reason for your perception?
  32. Re: Does it has a Future ??[ Go to top ]

    Since the integration of AJAX, it's really, really fast! The demo server is hosted in germany. Maybe that's the reason for your perception?
    I definitely agree that AJAX is fast. It very well could have been because it was in germany that was causing performance issues for me. A nice little side-note since you mention AJAX though, the Flex implementation tries to establish a Socket connection and fails-over to AJAX communication (with a few tweaks). AJAX is quite fast, but when compared side-by-side to a direct Socket connection it seems pretty darn slow...and inefficient. ;)
  33. great work! about the demos, could you please make the source code downloadable. thanks a lot. - Wei
  34. I need to post a reference to see the source code from the site, but you can see the source here for NumberGuess: NumberGuess
  35. Name rip off[ Go to top ]

    Anybody mind if I rename the JBoss Microcontainer project to jSpringless?
  36. Re: Name rip off[ Go to top ]

    Anybody mind if I rename the JBoss Microcontainer project to jSpringless?
    I don't mind if you rename it. ;-) But I hardly thing it's the same thing. "Seamless" is a pretty common term and it's not as if he's going out of his way to make his project "not Seam". And since Seam is much more than just a better way to do UI, I wouldn't even say these two are even competing projects.
  37. Re: Name rip off[ Go to top ]

    Well said Preston. They should not be considered competing projects necessarily, although there is a level to which they provide similar functionality they are completely different ideas. I decided to call the project jSeamless because it makes deploying to different environments and different technologies "seemless". However, that's not to say I didn't appreciate the play on words at Seam's expense. :)
  38. Re: Name rip off[ Go to top ]

    Anybody mind if I rename the JBoss Microcontainer project to jSpringless?
    Fitting .. ;-) Peace, Cameron Purdy Tangosol Coherence: The Java Data Grid
  39. Re: Name rip off[ Go to top ]

    Anybody mind if I rename the JBoss Microcontainer project to jSpringless?
    I would mind. :-) Perhaps with -more suffix? ;-)
  40. Love it, but needs work[ Go to top ]

    Absolutely LOVE the concept. I believe that it IS where things need to go. However, still beta, and from the home page using firefox 2.0.0.3 I can't access the support forum. I'm going to keep an eye on this one and in 6 months might give it a go. Keep up the good work, this would be a project that I would contribute to if it were possible... Cheers, Mark
  41. Thanks for the kind words. You connect directly to the forum here. I would appreciate some feedback as to what exactly is giving you problems on Firefox as that is what has been used primarily for development on. If you're interested in working with me to resolve the issues I'm confident I can convince you that even though it's in beta, it is worthy and needing support right now. ;)
  42. thanks, Matthew. -Wei
  43. accessible?[ Go to top ]

    sounds like an interesting idea, but before it should be considered by the enterprise community it should at least be capable of producing (xhtml/css/w3c) accessible websites, if websites are it's main focus. can it do that out of the box? i haven't bothered to look, i admit, because as soon as i went to the website i noticed it was flash and just stopped right there. if it doesn't do this now, please be sure to let the community know when it does! tia! =)
  44. Re: accessible?[ Go to top ]

    No, it currently does not have an HTML implementation. However, there's been such a large outcry for it since it hit TSS that I will make that a priority. Yes it is Flash for the current web site, but don't give up on it for that. This is doing dynamic things that (to my knowledge) has never been done before. It has a AS3 interpreter that I wrote to dynamically generate and manipulate components on the fly based on communication from the server.
  45. Re: accessible?[ Go to top ]

    Matthew, I'm really happy to see you taking this initiative. It is sorely needed at this point in time to have an abstraction layer like this to advance UI development. The only recommendation that I have is that in order to boost adoption of the library a lot, would be to provide a 'base' platform - that is pure Java, and handles the majority of logic you need to implement your own UI platform. Consider creating a few layers of UI 'platform implementation' for example: Level 1: You implement a 'fireEvent' method and a 'drawBitmap' method, and you have a fully functional port of the UI system to your own platform. You would see a large propogation if implementations using this layer - since it is so simple. Level 2: Coders can implement 'Widgets' that override the base platform widgets. So by plugging in a few SWT widgets, for example, or Swing ones, you effectively port the API to Swing or SWT. Level 3: Coders can using AOP / Or ignore the majority of 'base platform' components and implement the majority of the logic themselves. This is similair to what you have today it seems - a 'skeleton' that can be implemented. I recommend this because if such options were available, I would probably myself implement a level 1 or 2 platform myself - and I know other developers who are in need of such a library as this also. All in all you have a great idea - if executed properly I think you could see adoption across many Java-capable platforms, which is a *lot*. Finally, please consider architecting the API to allow for java 1.4 level compliance. Then your entire library could be used in .NET to generate j# applications! This would be extraordinary. I would be interested in helping with some components also possibly. Let me know your thoughts, Thanks, and good luck.
  46. Re: accessible?[ Go to top ]

    Well, this uses AspectJ for implementations and they simply implement the ImplementationListener and they can have a fully functional implementation. It's actually easier than what you're suggesting. ;) I would appreciate your further insights on the forum if you're interested?
  47. Re: accessible?[ Go to top ]

    Matthew, For example, lets say I wanted an OpenGL port I could do: class MyOGLPlatform extends JSeamlessPlatform { //this handles output void drawUI(UIBitmap bmp){ MyOGLSurface.draw(bmp.getColorData()); } //this handles input void processEvents(EventPipe p) { //funnel input events - maybe from say, GLUT? p.processEvent(key, mousex,mousey,mousebuttons); } } So in that many lines of code you've create an opengl 'port' of the API, since the API provides 'JSeamlessPlatform' which handles (maybe via AOP) all the other 'stuff' for you. Or for example you want to create a SWT port: import my.swt.libraries; class MySWTPlatform extends JSeamlessPlatform { //gloriously oversimplified void createWidget(java.lang.Class clazz) { if (clazz instanceof JSeamlessButton) return new SWTButton(); //handle other widgets here //example: label, edit, tree, etc. } } -- and this could create a SWT port with few lines of code. Again if you allow jdk1.4 compliance, one could do the above, compile under J# - and have a .NET application! (Note J# express is a free download now from MS) I would love to give any other architecture ideas - I think you have a great base to start from! Thanks,
  48. Re: accessible?[ Go to top ]

    Sal, have you taken a look at the ImplementationListener interface? It's actually very similar except it is internal event driven based on changes to the application object model. Using AspectJ the implementation listener implementation (sounds pretty redundant) it receives events when something is added, removed, or changed so instead of having a "render" style method you can simply change only what needs to be changed. This is of particular necessity with a Client/Server implementation as you don't want to send the entire component across the connection every time there is a change to it. If I'm still missing something please let me know. I would definitely be interested in continued feedback via the forum. I want jSeamless to be a great framework and I don't believe it's far from becoming that, but the more knowledgeable programmers I have helping and correcting the idea the better it will become.
  49. A little niche[ Go to top ]

    What would be the advantages of using this framework instead of Flex. Why do we need another abstraction? Do our applications really need to migrate from web to desktop?
  50. Re: A little niche[ Go to top ]

    Many questions for such a short post. ;) The major advantage to using jSeamless instead of Flex is a decision to want to program in Java rather than MXML (Flex) and ActionScript 3. If you know the latter well and don't mind still having to write something separate for the server-side then good luck to you. However, if you're like me and would rather not have to write some code to bridge between client and server and would like to do all your work in Java then jSeamless solves this problem for you. From one perspective I must admit, this is yet another abstraction. However, the goal is to be the UI abstraction to end all UI abstractions. No longer be concerned about needing a UI framework for your Desktop applications, your web applications, your J2ME applications, etc. Now simply develop in jSeamless and rely on the implementations for jSeamless to handle where you want to use the app. Whether you need to migrate from web to desktop or not is only a small point here. You gain the ability to not have to care. Further, that's only one aspect of this framework. The idea is also to develop a full-featured abstraction even if everything you care about is web-based you can develop in 100% Java and still get an amazing web application together that can do things easier and more modular than any other framework can offer.
  51. If all the effort...[ Go to top ]

    You spend on NOT committing to a technology were spent on committing to a technology and writing something useful, Your code would serve mankind. And someone after you were dead would port it for free as a duty to his fellow man. However, you choose to NOT serve mankind by not committing to a technology and NOT writing useful code. good luck son.
  52. Re: If all the effort...[ Go to top ]

    Thats the most pathetic piece of garbage post I've ever had the misfortune to read on TSS! Ignore the naysayers Matt and continue on the with the good works. Mark
  53. Re: If all the effort...[ Go to top ]

    This code is committing to a technology and that technology is Java. :)
  54. Re: If all the effort...[ Go to top ]

    "Talladega", you will have to use jSeamless. You have no choice. In one of your frequent drunken stupors, you will be shanghaied and forced into perpetual servitude of writing jSeamless code. Resistance is futile.
  55. Re: If all the effort...[ Go to top ]

    "Talladega", you will have to use jSeamless. You have no choice. In one of your frequent drunken stupors, you will be shanghaied and forced into perpetual servitude of writing jSeamless code. Resistance is futile.
    I wasn't sure if he was drunk or high or schizo.
  56. Re: If all the effort...[ Go to top ]

    Frank, does the rant above count as a drunken stupor? ;)
  57. Re: If all the effort...[ Go to top ]

    Frank, does the rant above count as a drunken stupor? ;)
    I'm not sure where "above" is. Talladega had quite a few posts of drunken stupor (well, at least we can hope it's just that).
  58. Re: If all the effort...[ Go to top ]

    Frank, does the rant above count as a drunken stupor? ;)
    Frank only has one mode of writing, and you just experienced it .. Peace, Cameron Purdy Tangosol Coherence: The Java Data Grid
  59. Re: If all the effort...[ Go to top ]

    Frank, does the rant above count as a drunken stupor? ;)


    Frank only has one mode of writing, and you just experienced it ..

    Peace,

    Cameron Purdy
    Tangosol Coherence: The Java Data Grid
    Isn't that cute. Cameron is sticking up for the short bus riders.
  60. catharsis[ Go to top ]

    Isn't that cute. Cameron is sticking up for the short bus riders.
    Frank, I apologize on behalf of whatever kids picked on you, whatever priests buggered you, or whatever father figures made you feel so small. I hope you can now live the rest of your life with some sense of freedom. Peace, Cameron Purdy Tangosol Coherence: The Java Data Grid
  61. Re: catharsis[ Go to top ]

    Isn't that cute. Cameron is sticking up for the short bus riders.


    Frank, I apologize on behalf of whatever kids picked on you, whatever priests buggered you, or whatever father figures made you feel so small.

    I hope you can now live the rest of your life with some sense of freedom.

    Peace,

    Cameron Purdy
    Tangosol Coherence: The Java Data Grid
    Cameron, well it's pretty obvious that my comment to "Talladega " flew right over your head (not surprising), but maybe you'll get it eventually. But in any case, I'll give you a hint. Some people don't quite grok that they're not dictators of who does what and when in the Java world. I'll leave it to you to engage Talladega in a collegial manner.
  62. Re: catharsis[ Go to top ]

    Wow, I didn't need to see any of that. :-p For what it's worth Frank, I appreciated your comments and found (most of - minus the short-bus one of course) them useful. :)
  63. Can it be used wid other web frameworks, like struts or webwork? while using webworks or struts, HTML is rendered using custom tag. thn wat abt jseamless? sudhir nimavat http://www.jyog.com
  64. Sudhir, it is not specifically intended to be used with other frameworks. Rather, it is intended to be an alternative to those frameworks. However, it is possible to create a jSeamless application and have only take up a specific portion of an HTML page via the Flex implementation.
  65. The community needs this[ Go to top ]

    This is great (except that the web site is down so I can't actually look at it). This is something for which I think there is a community need, and I'm sure these projects will continue to pop up and mature. Some people on this thread seem to be missing the point. From what I understand, this is a true UI abstraction layer, so asking how it compares to OpenLazlo is not relevant. You can build a OpenLazlo render kit if you want. That's the great thing - write to a neutral API, and when a new wonderful UI implementation technology comes along, write a render kit to it. (I'm not convinced that Echo2 really represents a true UI abstraction layer - I've looked at its Render API to a certain extent, but not in real detail, so I might be wrong). A friend of mine and I have had this idea for a couple of years, and have a project nearing preview, with the initial render kits being Echo2 and GTK#, with a Swing version probably to follow. We also have a network protocol into the mix, meaning we can do thin-client but not necessarily with a web browser. I will be investigating this project with interest, but since the website is down, I can't event see the license yet...
  66. Re: The community needs this[ Go to top ]

    I'm not convinced that Echo2 really represents a true UI abstraction layer - I've looked at its Render API to a certain extent, but not in real detail, so I might be wrong.
    It does. Echo2 comes with three packages: app, webcontainer and webrender. App contains the UI abstraction, webcontainer provides the mapping between the UI abstraction and webclients, webrender provides the communication with the client and the core js library. It is certainly possible to create a flex/swing/opengl/etc. implementation for Echo2. I don't think it will be trivial to do, but I guess that's the same for jSeamless.
  67. Re: The community needs this[ Go to top ]

    Sorry, we've been having a lot of server issues since we appeared on TSS. It has been great for uncovering bugs in the beta release, but a nightmare to try to keep up with. :) I would be interested in seeing what you've accomplished and would be even more interested collaborating into one project endeavor. I believe there's definitely room for an idea like this, but I believe there is only room for one. :) The site should be working again (at least for now).
  68. I can't find the license on the website - can you clarify?
  69. Re: jSeamless License[ Go to top ]

    We'll hopefully have a FAQ up soon that will answer questions like that. The project is open-source and the license is BSD.
  70. similar to wiser?[ Go to top ]

    For me this project seems similar to wiser? http://www.c1-setcon.de/widgetserver/
  71. Re: similar to wiser?[ Go to top ]

    Thanks for the link Nicola, I hadn't seen that one before. It's actually quite similar in premise. I'm definitely going to look into this project further, but just after a few minutes of investigation I saw a few things that bothered me. First, the calculator example was extraordinarly slow. Second, they sell commercial licensing so you don't get everything unless you buy it. That's not to say I have a problem with commercial licensing, but the I personally believe that a UI abstraction should be 100% free and open-source if possible. That is my goal with jSeamless. That is not to say that some implementations may eventually be made that are licensed, but at that point it would be the choice of the developer if they wanted to use a free implementation or a commercially supported implementation. Granted, I only gave the site a few minutes of my time. I'll definitely look into this one further but I didn't see any example code and it sounds like all the UI is done via XML?
  72. Re: similar to wiser?[ Go to top ]

    Granted, I only gave the site a few minutes of my time. I'll definitely look into this one further but I didn't see any example code and it sounds like all the UI is done via XML?
    THERE ARE 3 WAYS YOU CAN DEFINE THE GUI 1- HTML/page centric way (like wicket or tapestry) - you have to have HTML, Javascript knowledge, 1- a Java centric way (like echo) - you do not have to have HTML, Javascript knowledge, 3 - or in a XML centric way(like all the XML/GUI frameworks around) - you do not have to have HTML, Javascript knowledge.
  73. Re: similar to wiser?[ Go to top ]

    Granted, I only gave the site a few minutes of my time. I'll definitely look into this one further but I didn't see any example code and it sounds like all the UI is done via XML?


    THERE ARE 3 WAYS YOU CAN DEFINE THE GUI
    1- HTML/page centric way (like wicket or tapestry) - you have to have HTML, Javascript knowledge,

    1- a Java centric way (like echo) - you do not have to have HTML, Javascript knowledge,
    3 - or in a XML centric way(like all the XML/GUI frameworks around) - you do not have to have HTML, Javascript knowledge.
    Interesting...I'm reading through the tutorial right now and I was startled when I saw the screenshot of the HelloWorld XML file it creates (granted it's via a WYSIWYG editor) is 49 lines of XML...for a Hello World example that's frightening. :) Further, you still have to create a IUnGuiEventListener to work with it. In jSeamless the Hello World example available via the tutorial consists of 9 lines of code and if you simply count the amount of code specific to "hello world" you have two lines of code: Label label = new Label("Hello World!"); add(label); I wasn't able to find any Java examples, do you have a link to any?
  74. Great stuff Matthew[ Go to top ]

    I can't wait for the HTML implementation
  75. Re: Great stuff Matthew[ Go to top ]

    I think it is interesting enough with just Flash only. I've not dipped my foot in that arena for the reasons others have stated enough. That is one reason I like Echo2 (or things like it) for building application UIs made available via [only] the browser.
  76. Re: Great stuff Matthew[ Go to top ]

    Those who can't wait, need only help it along. ;) Drop by the forum and pledge your assistance to the creation of it...we need help. I've done everything to this point by myself, but if this project is to survive and accomplish what I envision for it then we need a LOT more help to get there. The only way this project is going to truly be successful is if the Java community at large recognizes the potential and moves to bring it into the fold.
  77. Stay On Track[ Go to top ]

    Matthew, Excellent work! I am very familiar with Echo 2 and its clones like ThinWire. I also have a little baby framework of my own at www.swervespot.org. When it goes beta the main feature it will provide is a native AS3/Java Servlet based CometD implementation. A brain dead way of implementing a headless set of RESTful services. OK, done with my plug. STAY AWAY FROM IMPLEMENTING A DHTML VERSION LIKE THE PLAGUE!!! My point is this. There are a zillion ways to skin the HTML cat and the Echo/jSeamless approach is not the way to do it. If your going down that line be prepared to integrate CSS3 properly, which you should be doing anyway directly from the Flex side. You shouldn't even be doing skinning Java side. Leave the Flex side open so the designers can participate. Also figure out a way to support native flex plugins using the half object design pattern. Implement a flex component, use your messaging fabric, implement the java stub, figure out some jar format that wraps it all together. Then you can do paint with no waste (mouse coordinates aren't being streamed back to the server), just the business "events" defined by the component developer. Ignore the HTML request, they are leading you in the wrong direction. It might even be malicious. After a ton of hard work you will just have an Echo 2 clone. Which is not good for you or that other one man show. You have picked great front and back end technologies. Now really make them work. Enhance the transport layer. Talk to Adobe and figure out a way to support RMTP as transport plugin. Talk to Red 5. Talk to the Flex community. How could this be a better Apollo, get it on the desktop. Flex front end with Text to Speech using Festival. This is the holy grail of Java/Flex integration. I guarantee you are just the first to market. Don't be distracted. Talk to a VC. You could own the financial services sector and all intranet apps for sure. Stay Flex, Stay Java, Stay Focused!!! Excellent! Simply excellent! I wish you all the best!!! - Travell Perkins, State Street
  78. Re: Stay On Track[ Go to top ]

    I appreciate your kind remarks and agree with your for the most part. I'm personally not a big fan of going down the DHTML road...I've had too much personal experience and know what I'm getting into. However, if the community wants it, they'll get it. Your subject was "Stay On Track" and I intend to do just that. The goal of the jSeamless project is to be a UI abstraction with multiple implementations and though it is always tempting to be happy with one implementation and feel it is fully capable of handling anything I might want to do, that just means I've done a good job of implementation, it does not mean I'm done. :) I would be VERY interested in trying to convince you to assist in the Flex implementation as I need some strong Java/ActionScript3 devs to be able to bring that together. I'm a strong Java developer and know JavaScript well enough, but I've learned AS3 by getting tossed in the deep end and trying to doggy-paddle my way out. I'd also love a demonstration of Swerve in action. I think you'd be very interested in my communication architecture I've defined for the Flex implementation, it is a little odd, but actually quite innovative if I do say so myself. ;) Travell, if you're willing, get involved in the forum and we can try to collaborate to bring together a universal framework rather than two exclusive ones.
  79. Swerve Beta[ Go to top ]

    Swerve Beta is coming very soon and it will have a native AS3 messaging layer with optimizations for continuations on the backend (Jetty). You should be able to leverage it for internal/external AVM messaging. Right now it supports arbitrary text messaging but I might look into AMF encoding since that probably is more performant for your needs. Either way, pure HTTP tunneling goodness. I will definitely keep up with your project. I don't know what you like for persistence, but I use Amazon Carbonado in Swerve and it just keeps everything in POJO heaven. - Travell
  80. Good job[ Go to top ]

    Congratulations Matthew, this is a great job. I am sure the UI abstraction is the way to go instead of the HTML, JavaScript, CSS, JSPs ... mix. Sorry for my ignorance, from a technical point of view, what is the difference between your approach and others like Thinwire (which is LGPL) or Canoo ULC (which is a commercial product)? Thanks Jose
  81. Re: Good job[ Go to top ]

    Congratulations Matthew, this is a great job. I am sure the UI abstraction is the way to go instead of the HTML, JavaScript, CSS, JSPs ... mix.

    Sorry for my ignorance, from a technical point of view, what is the difference between your approach and others like Thinwire (which is LGPL) or Canoo ULC (which is a commercial product)?

    Thanks
    Jose
    Well, from ThinWire's opening statement on their site:
    ThinWire® is an LGPL open source, free for commercial use, development framework that allows you to easily build applications for the web that have...
    The key word there is web. jSeamless is not specifically about the web, it is a UI framework that extends to the web and beyond it. This means any platform and any environment has the potential of having a jSeamless implementation written for it (if not various). Honestly, I haven't delved into either one of those APIs, they seem to be pretty nice. However, jSeamless goes beyond their focus into what I believe is the future of UI development. In the web site I refer to "the UI revolution" and that's primarily intended as funny marketing-speak, but there's some truth to it as well. To my knowledge there is no other framework that has attempted to create a complete UI abstraction in Java and be able to leverage implementations in any platform and environment (correct me if I'm wrong here). I think this is the next stage in Java development. Specifically to move away from what I believe is the stumbling block in the Java community...J2EE.
  82. Half Objects[ Go to top ]

    Last comment: There are so many different ways to implement a proper UI for a service in DHTML. The Half Object Design Pattern is not a good for most web apps that have any reasonable designers involved. Ruby on Rails, PHP, JSP, and templates work much better. HOP is best used for solid UI frameworks on the front end. I vote for Flex and Silverlight for jSeamless!!! - Travell
  83. Re: Half Objects[ Go to top ]

    Last comment:

    There are so many different ways to implement a proper UI for a service in DHTML. The Half Object Design Pattern is not a good for most web apps that have any reasonable designers involved. Ruby on Rails, PHP, JSP, and templates work much better.

    HOP is best used for solid UI frameworks on the front end. I vote for Flex and Silverlight for jSeamless!!!

    - Travell
    I have to disagree about the DHTML implementation, I think it can be done quite well (given significantly more work than the Flex implementation took). I would be interested in a Silverlight implementation, but it only works on Windows, right? If you're interested in furthering the Flex implementation or creating a Silverlight implementation drop by the forums and we'll put you to work. :)
  84. Re: Half Objects[ Go to top ]

    Silverlight is cross platform: Windows and Mac I mean you have to raise the bar right. If it just simple Windows 95 looking applications no problem, but truly cinematic requires a core that was designed to do that. DHTML is great, but its not DirectX right? Silverlight sits right on top with a ton of graphics API goodness. Same for Flash except there is no hardware acceleration (biggest thing missing by the way). Swing apps got blazingly fast once Sun invested in Java2D hardware acceleration. Its the difference between being able to do Tetris and Doom. DHTML can and has done Tetris. It can't do Doom. Given that the world is going towards cinematic you have to choose where you want to spend your time. At some point the DHTML implementation will fall off if you want to follow your cinematic competitors in the space. What is cool about what you are doing is your competitors are open and meant to be leveraged. So by existence proof: Flash/Silverlight are more capable cinematically than DHTML. So with your Flex implementation (can be skinned and extended with all capabilities of Flash) is more capable than the DHTML implementation or you create a common denominator. I see that as having minimal value; Laszlo already does that. That was my point about the plug-in API by the way. I would love to chip in on that so that developers can make rich components with low overhead. -T
  85. Sliding Off[ Go to top ]

    I'll say this before jSeamless slides off the front-page of TSS that this has been a wonderful opportunity for a project I've been working on for some time to see the light of day and give many professional developers out there an opportunity give quality feedback and ideally even consider using it. I would like to make a request for continued discussion on the jSeamless forum as I value all these opinions a great deal and would love it to continue as jSeamless tries to work its way from Beta to Release. It is still going to be a while before it's there, and may well require some significant changes before it gets there and it needs professionals to help it get there. I've done a lot to bring it where it is and I've received a LOT of feedback from people, but I would really encourage that involvement to continue on the forums. If you are just a TSS user and don't really care to get further involved then I still appreciate your constructive criticism and time spent previewing this framework. If you are interested in becoming more involved then get set up on the forum: http://forum.captiveimagination.com/index.php/board,14.0.html Thanks again! -Matt
  86. Re: Half Objects[ Go to top ]

    And I guess that begs the question, at what point does your (user) code have to diverge in order to break out of the limitations of DHTML. Obviously if DHTML could do everything that Flash or Silverlight could do then there would be no need for Flash or Silverlight. Travell makes some interesting points. Is DHTML(Ajax) a evolutionary dead end for doing real apps?
  87. Re: Half Objects[ Go to top ]

    And I guess that begs the question, at what point does your (user) code have to diverge in order to break out of the limitations of DHTML. Obviously if DHTML could do everything that Flash or Silverlight could do then there would be no need for Flash or Silverlight.

    Travell makes some interesting points. Is DHTML(Ajax) a evolutionary dead end for doing real apps?
    You make a valid point. DHTML will probably never be as fast as something like Flash or Silverlight because their intents are different. However, with enough JavaScript much of that can be hidden and realistically you can re-create that "half-object" approach with JavaScript objects that equate to HTML representations on the page. I believe long-term DHTML is not going to be the optimal approach to web development, but it seems obvious that the majority of web developers aren't comfortable enough with Flash/Silverlight to invest in a framework that just creates that. The way I look at it is those people that want the DHTML implementation now will start using jSeamless and realize the performance and appearance advantages gained by Flash and eventually move over (and with jSeamless that's simply swapping to another implementation). If that happens we may eventually abandon the DHTML implementation, or they might be right and DHTML has a long-life ahead of it in which case we can continue to support it. This is the greatest feature of jSeamless. You'll never hit a technological dead-end. You develop a standardized UI and then if "Super Karate Web UI" comes out you can convert all your applications without a single change in your code, just simply swap out for the implementation.
  88. javafx[ Go to top ]

    What is the difference b/t jSeamless and JavaFX? Aren't they both trying to do the same thing? One UI API for any underlying implementation?
  89. Re: javafx[ Go to top ]

    JavaFX sets out to provide enhanced UI effects in Swing. jSeamless on the other hand is a UI abstraction. Realistically they are completely different. The only real similarity is that both provide a powerful effects handling system. The Flex Implementation of jSeamless provides a lot of effects similarly to JavaFX, but is intended for web use whereas JavaFX is desktop application in Swing only. I see the potential of integrating JavaFX functionality in the Swing implementation of jSeamless. Rather than think about these two as competing technologies, with jSeamless you can think of them assisting each other.