JSF vs JavaFX : Pros & Cons [closed] - java

Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 9 years ago.
Improve this question
I have read the Wikipedia article on JavaFX and several other articles and I believe I have a decent understanding of what it is and what it does.
My question is simple: what do Java EE best practices dictate one uses for the presentation? Or, is it possible to use them both? Either way, can someone give an example of when it would be appropriate to choose one over the other, and why?
Thanks for any help with this; I'm just not seeing why anyone would ever want/need to stray from JSF.

JavaFX and JSF are two very different animals. I think of JavaFX as Oracle's version of Adobe Flex (or Flash?). It runs on a JVM, which means it's a heavier client for the browser. JSF uses standard HTML controls and interaction.
Running in a VM, like JavaFX or Flex means that you don't have to worry as much about browser capabilities like you do with standard HTML/Javascript, but it also means you are at the mercy of the VM implementor to get the platform on browser XYZ and fix platform and security bugs as they arrive. Another consideration is that some corporate environments may not like allowing plugins like flash/java in the browser.
Running pure HTML/Javascript will likely get you going on more devices and is lighter weight than needing to load a VM into the browser (never thought I would call JSF 'lighter weight'.) jQuery and other javascript frameworks have lessened the worries about cross-browser compatibility somewhat but not completely.
So, the answer is the same here as it is for every other question like this: "It Depends." What are your needs? Are you doing an annoying restaurant website where you feel like the menu (even though it's just an image) needs to be loaded by a heavy plugin? Perhaps JavaFX will fit the bill. Are you doing a simple CRUD app and you want to complicate things by using a difficult component based framework? JSF can help you with that.

JSF is pretty rich in UI compared to spring or struts but has a jargon of maintaining session and additional jars. But if you use richfaces, ibmfaces or primefaces your life will be much easier. JSF is a specification and you need to use its implementations like richfaces or myfaces.

Related

Alternatives to Java applets [closed]

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 2 years ago.
Improve this question
I'm planning to write a simple program that displays course prerequisites for students at my university in graph form (ie as a network of vertices and edges). I'd like to embed the program in a webpage to save people the hassle of downloading an executable.
Currently I'm looking at making my program a Java applet (Java also would give me access to the handy Swing library), but I don't like the fact that applets can't be viewed on most mobile devices.
What alternatives to applets exist for a project like this? I'd like to make it compatible with as many devices as possible, and also not have to build the graphics stuff from scratch.
One final consideration is I'm doing this mostly as a learning exercise. Ideally the tools I'd be working with would be helpful to know in the future.
Please don't use applets. They have been sufficiently deprecated.
The best way to do this is by using html/js/css. A lot of useful libraries exist that can help you with this task. jQuery seems obvious, but there's also d3.js or vis.js for displaying visual representations of data, and bootstrap for responsiveness (mobile friendliness).
You may use Angularjs with angular-chart for Showing graph in Web Browser.
If your graph data is dynamic you might use Nodejs and mongoDB for backend.
angular-chart is responsive and its easy to show dynamic graph. But as it uses HTML5 canvas some mobile browsers might not show its transitions smoothly depending on the device.
I personally do not prefer using applet in web browser when the same functionality can be achieved using great frameworks like Angularjs.
why dont you try to build your project through Servlet framework
by the way cgi were removed by servlet because of the handling of the request
applet uses the same concept

Replacement for GWT [closed]

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 3 years ago.
The community reviewed whether to reopen this question 11 months ago and left it closed:
Original close reason(s) were not resolved
Improve this question
I built an application using GWT in 2012 and it has worked fine until now when a major functionality upgrade is required.
I used GWT because my background is Java and having worked in MVP type projects prior to that it was a good fit.
Today, any problem I encounter and do a google search for has answers that are posted 2 to 3 years ago ( and in a lot of cases don't solve my own issues ) This is telling me that GWT is being left behind.
Because I built the app primarly as a hobby to learn GWT I feel like I would like to learn a more recent framework when rebuilding my application.
So to narrow it down, I want to know if there is any suitable more recent alternative to GWT out there that still allows me to code in Java.
I understand this may seem like a broad question where answers will be mainly based on opinion but how else can you pick peoples brains except asking "What is your opinion" How do I do a,b,c using Java is going to be answered 3 different ways by 3 different people based on their opinion of how it should be done.
I have heard about Vaadin (https://vaadin.com/home)
Vaadin is a covering around GWT giving you more flexibility to work and the same time maintaining the GWT like experience.
Otherwise this is a good compilation, you could pick what you might need:
https://github.com/jashkenas/coffeescript/wiki/List-of-languages-that-compile-to-JS
As a long time GWT user I am increasingly drawn to AngularJS. Obviously we're talking JavaScript rather than Java here, but coming from a Java background myself I'm finding JavaScript with AngularJS a decent alternative to GWT.
Check OpenXava it's easy to use. http://www.openxava.org/ate/gwt-alternative
There is nothing wrong with GWT per se. Polyglot programming has real costs and there is plenty of activity e.g. on gitter. https://gitter.im/gwtproject/gwt
New users can use https://github.com/gwtboot to get started and there are modern ui kits like https://dominokit.github.io/domino-ui-demo/index.html?theme=indigo#home
Since you still want to code in Java and want to learn something new, i would suggest using "modern GWT", i.e. using elemental2 / j2cl. You should consider learning to refactor your app to separate your view layer from the underlying ui framework. Avoid the parts that will go away in GWT 3.0 such as RequestFactory
JSF? http://en.wikipedia.org/wiki/JavaServer_Faces
It's the "official" (part of Java EE) framework for Java web apps. I've used it briefly in the past and was relatively happy with it. I very much prefer it over other frameworks that still rely on JSPs.
cuba-platform if you are looking for ready made components and Web Firm Framework if you are looking for a framework which can be used to build any UI component. Both are java frameworks to build web ui.
I would recommend learning either Swing or JavaFX.
Swing has been arround since Java 1.2 and is the more "mature" one.
javaFX is their new "hip" version and was introduced into the JDK at version 7.
Personally I'd go for JavaFX just to be "future-proof".

Best Java Frameworks for learning [closed]

Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 6 years ago.
Improve this question
What would be a good Java framework to explore for someone looking to learn? I've played around with the Android api but had someone ask what other frameworks I had experience with so I thought I should spend some time working with another. What's the best bang for my time?
There are many java frameworks but we can categorize two parts.
Standard Frameworks
JSF
JSP & Servlets
JPA
EJB
Non Standard Frameworks
Spring
Strut
Wicket
GWT
Hibernate
Seam
Play
Others
For web frameworks i suggest : Spring, Hibernate, Struts, Primefaces (cool stuff) .
It really depends on what it is you're trying to gain experience with. If you are looking for web frameworks, gaspyr named some decent ones you should try (I've worked with Spring myself). If you are looking to develop just desktop applications or embedded solutions, I would just go with tackling the standard JRE, and take special note on how the differences between how applications, applets, and servlets run. It's always good to know about the underlying libraries themselves rather than just understanding the syntax and attempting to use a framework to solve all problems without understanding how they might work under the hood.
But this is a really open ended question, and it's difficult to know exactly what you're looking for and why.
Framework choice depends on many factors and good documentation is not the least.
There is incredible book "Spring in Action" if you will decide to start with Spring.

Advice on what platform and technology to use: distributed bookkeeping app [closed]

Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 9 years ago.
Improve this question
I have an opportunity to learn some new tech to write this code. Basic requirements:
users in various locations worldwide
user control: control who can see, edit, approve various sheets/accounts/transactions within a sheet
parse bank statement files into the system
generate reports
robust logging: who enters, edits, approves transactions
secure, reliable data storage
ability to serve from the Internet, or a local network web server
I was going to use a Google Docs Spreadsheet with scripts, but I can't see the user control being rigid enough.
At the moment I am leaning towards Java Servlets and JSP with Google App Engine.
What would you use?
Servlets and JSP are good technology but fairly basic / low level. You might find it more interesting and productive to try on of the newer web-based frameworks.
Some ideas:
Vaadin might suit this kind of application pretty well, it's a framework for rich internet applications that gives you much more sophisticated components than you could implement with plain JSPs.
I've also heard very good thinks about the Play Framework.
If you are feeling really adventurous and fancy picking up a new language (Clojure) then Noir is also a great web framework in the making.
The only requirement here that may be a gotcha for App Engine is "ability to serve from the Internet, or a local network web server". What exactly do you mean? If this is something that your users are going to want to install locally then App Engine is out of the question.
Any sort of java based solution is going to fit all of the rest of your requirements. Since you have a lot of logging/security, you may want to look at Spring MVC with Spring Security or even Grails (which also supports spring security).

Framework Choice / Recommendations for Google App Engine [closed]

Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 9 years ago.
Improve this question
i want to develop a big web application in Google App engine, but I don't know which framework to use in order to obtain the MVC Model. I prefer to use Spring MVC, but I read that several problems with GAE. Another option would be to use django with python but I have never used that. What framework or option do you recommend? Are there other frameworks?
Greetings
You should check out web2py -- it's a full-stack Python MVC framework that's very easy to set up, learn, and use. It was designed to run on Google App Engine out of the box, and there's a whole section in the online book dedicated to GAE (there are also other references throughout the book discussing a few special considerations when developing for GAE). There's even a "Deploy on Google App Engine" button in the web2py browser-based IDE (see the IDE demo home page and GAE deployment interface).
Your web2py GAE apps will also be portable -- you can deploy them on other platforms (e.g., a Linux VPS) without changing your code (though you may want to make some adjustments once you're off GAE and no longer subject to its limitations).
If you have any questions, you'll get lots of help from the mailing list.
I've used Stripes on Google App Engine with success and pleasure. It's a simple yet really powerful MVC stack, very easy to learn and use, and with great documentation. I've been able to integrate it with Guide (for dependency injection) and Sitemesh (for page templating). If you're interested, the code for the application I developed is available at http://code.google.com/p/memwords/.
Django is a best framework for projects without incredible high load, but GAE supported by a very old version.
Try to use Pycharm for editing GAE-applications. This is already usable IDE with active development
Take a look at Tornado, it's a scalable, non-blocking web framework in python and it's simpler and easier to develop in than Django.

Categories