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'm learning Java and I've been reading these books:
Head First Java, Head First Servlets and JSP to get started.
Up until now, I've been doing most of the learning on HF Java on Eclipse IDE for Java developers(not the EE one). I also installed Java SE 7.
But now I want to move on to HF Servlets and JSP. The book says I need only Tomcat.
I also wanted to familiarize myself with NetBeans, so I downloaded Netbeans IDE for Java EE from this page https://netbeans.org/downloads/index.html.
My questions are : 1. Should I download Java EE before installing this version of Netbeans? Does this version include the Java EE or should I download it from Sun page?
2. Is it overkill to install Netbeans for EE when all I need is Tomcat?
I will eventually learn EE I think... After these two books, I may read HF Design Patterns or HF OOAnalysis & Design Not sure if they're really necessary.
3. What would be the appropriate learning order do you think is ?
Your answers will be appreciated.
1.
Java EE is basically just Java SE with a few additional JARs for EE APIs like Servlets, JAX-WS etc. Installing multiple JREs on a computer will most likely lead to runtime issues because of the question which JRE is the default one, especially on Windows, since JAVA_HOME environment variable is not consulted in Windows Explorer, and tools like Ant and Maven depend on it.
For example, I keep several JREs/JDKs in one folder (unpacked, not installed) and list them in Eclipse to run applications I am developing on a particular JRE.
2.
When you, in Eclipse, do the following:
Window > Preferences > Server > Runtime Environments > Add...
and select Apache Tomcat 7, in the next step you can click on Download and Install... for Eclipse to download the latest Tomcat and set it up in selected folder as a target runtime that will run in the selected JRE.
You can also manually do the same and just point Eclipse to the folder where you installed / unpacked Tomcat.
When you then create the new Server for that Tomcat runtime you can assign a Dynamic Web Application project to it and it will be deployed on every change to the project. You can run it or debug it from inside Eclipse.
3.
Once you are on good terms with servlets and JSPs you should probably continue with the OO Analysis and Design, and then learn the Design Patterns. After those I recommend books on OSGi and Java Application Architecture.
Good luck.
If you install Netbeans EE, it will also install other goodies such as Tomcat or Glassfish. This will allow you to debug your EE application directly from the IDE, as opposed to having everything dumped into Tomcat logs.
I think that since you are just beginning, doing everything from your IDE will allow you to better focus on what you need to learn.
If you learn the usual coding standards and recommended ways in Java SE, you shouldn't have any trouble in moving on to EE. If you read more about OOP and other design patterns, you will be better equipped to build decent applications and also better understand frameworks which are already available.
Related
Closed. This question needs details or clarity. It is not currently accepting answers.
Want to improve this question? Add details and clarify the problem by editing this post.
Closed 1 year ago.
Improve this question
Hello I'm creating java web application with eclipse and glassfish since 6 years ago. After this years was updating the IDE and Server wasn't the harmful like today. With Jakarta (namespace) , now I lose my IDE and Server. It's great move about Jakarta but I'm wondering why eclipse foundation and Jakarta (that supported by eclipse) not integrated and I can't start fresh new Eclipse(Last Version) and Glassfish 6 without getting error! If someone can do it please share with me , maybe I'm too new! All I want is Download the eclipse , download Glassfish 6 and start programming so if that have configuration, I don't understand about it, please share it with me.
Other my question about eclipse and Glassfish 6
I'm wondering why eclipse foundation and Jakarta (that supported by eclipse) not integrated and I can't start fresh new Eclipse(Last Version) and Glassfish 6 without getting error!
Well ... the short answer is because of Oracle's legal department, and their past history of legal aggression.
As the Wikipedia page for Jakarta EE states:
"Java EE was maintained by Oracle under the Java Community Process. On September 12, 2017, Oracle Corporation announced that it would submit Java EE to the Eclipse Foundation. The Eclipse top-level project has been named Eclipse Enterprise for Java (EE4J). The Eclipse Foundation was forced to change the name because Oracle owns the trademark for the name "Java" and renamed the Java EE platform to Jakarta EE."
Given Oracle's tendency to aggressively defend Java trademarks, copyrights and so on, the Jakarta EE specification committee decided that the wisest (and most future proof) course of action was to do a Big Bang rename of all of the packages in Jakarta EE from javax.* to jakarta.*.
Unfortunately, this has an impact on people transitioning from (legacy) Java EE to Jakarta EE 9 and later.
It has also resulted in a stack of extra work for the folks who maintain the Eclipse IDE. Work takes time, especially when some of the work is done by volunteers.
References
https://blog.hargrave.io/2019/05/jakarta-ee-and-package-renaming.html
https://www.eclipse.org/lists/jakartaee-platform-dev/msg00029.html
All I want is download the Eclipse, download Glassfish 6 and start programming so if that have configuration, I don't understand about it, please share it with me.
On the Eclipse Foundation's Glassfish Downloads page there are resources on converting from Java EE to Jakarta EE. Including a video.
Closed. This question needs to be more focused. It is not currently accepting answers.
Want to improve this question? Update the question so it focuses on one problem only by editing this post.
Closed 5 years ago.
Improve this question
I have done some research on JavaFX over the last year, and even built some basic desktop apps with it.
It's described as being used to create RIAs (Rich Internet Application).
http://en.wikipedia.org/wiki/Javafx
But can it really be deployed by a web browser? I have only deployed it via an executable JAR file.
How easy is it to deploy via web browser? Does it work? Does anyone have experience with this?
http://docs.oracle.com/javafx/2/deployment/deployment_toolkit.htm
Update for the March 2018 Java Client Roadmap
I encourage readers interested in this question to review the following Oracle Whitepaper:
Java Client Roadmap Update
The above paper outlines the official Oracle position on related technologies (JavaFX/Swing/AWT/Applets/WebStart), the dates until which it intends to support those technologies and which of those technologies it intends to transition to open source development projects separate from the JDK and JRE.
Update for Java 9, Oct 2017
According to the Java 9 release notes:
Java Applet and WebStart functionality, including the Applet API, The Java plug-in, the Java Applet Viewer, JNLP and Java Web Start including the javaws tool are all deprecated in JDK 9 and will be removed in a future release.
So, for Java 9+, deployment of JavaFX in a browser using a Java plug-in will only be possible using deprecated technology. Oracle notes in another part of the Java 9 release notes:
Deprecates the Java Plug-in and associated applet technologies in Oracle's JDK 9 builds. While still available in JDK 9, these technologies will be considered for removal from the Oracle JDK and JRE in a future release. Applets and JavaFX applications embedded in a web page require the Java Plug-in to run. Consider rewriting these types of applications as Java Web Start or self-contained applications.
Note: Java Web Start isn't really an alternative as that is also deprecated (anyway, it's different from an application embedded and rendered within a browser page). Also note for those who wish to use Web Start, even though it has now been removed from Oracle JDK 11+, it is available as open source, info on this is at OpenWebStart.
As an alternative which offers similar functionality, consider something like jpro, which deploys JavaFX applications in a browser without a Java plugin (jpro is currently only in closed beta, so it is not a viable solution as of October 2017, but maybe someday in the future...).
For now, I would recommend that the best way to deploy JavaFX applications is as self-contained applications, running outside a browser.
Previous answer for Java 7 and 8
JavaFx - can it really be deployed in a browser?
Yes, JavaFX applications can be deployed so that they run inside a web browser hosted html web page.
The technology which allows this to occur is the Java Plugin. This plugin is currently a NPAPI based browser plugin solution. The Java Plugin is shipped with the Oracle Java 7 Runtime Standard Environment.
Not all browsers are supported, only those listed on the JavaFX Supported Configurations page.
How easy is it to deploy via web browser?
The easiest way to deploy a JavaFX project in a web browser is:
Create a new JavaFX project in NetBeans.
Develop a simple HelloWorld App.
Follow the instructions for Deploying your first JavaFX Application.
This is not difficult (in my opinion).
Alternatively, follow instructions on the detailed reference for Deploying JavaFX Applications (or use 3rd party tools). For many projects, using a tool other than the NetBeans IDE to perform packaging is a better approach. However, it is generally easier to let the NetBeans IDE handle deployment packaging tasks for you.
What follows is not related to answering the original question, but provides some opinions and information requested in comments on this answer.
Some Advice
There are pitfalls to deploying Java in a browser. I encourage you to do your own Google research on the subject.
In my mind, based upon the current JavaFX 2.x deployment model, for most application types that require a browser as the primary runtime container, using JavaFX is not an appropriate solution.
Examine the deployment and runtime requirements for your application. Based on your requirements, and knowledge of the JavaFX browser based execution model, decide if a browser based deployment using JavaFX technology is the correct mechanism for your application.
A couple of potential difficulties for browser embedded JavaFX applications
Some important browsers (e.g. Internet Explorer 10, iOS Safari and soon Desktop Chrome) don't permit execution of plugins using the NPAPI currently used by the Java browser plugin => some of your target users may be unable to use your application.
With a browser embedded application, you don't have complete control over the runtime on which your application executes (browser + Java runtime + plugin interface) => an application which was working when first installed may stop functioning as expected after an update to these runtime components.
Deployment Alternatives
If a browser based deployment model is not appropriate for your application, there are other ways to deploy JavaFX applications (e.g. WebStart, stand-alone jars and self-contained applications).
JavaFX - can it really be deployed in a browser?
No, not any more.
The answer used to be yes, as given in this answer, although even in 2013 when that was written the writing was on the wall. However, here in 2016 the answer is no, it cannot. Modern browsers essentially don't support NPAPI any longer (Firefox does for Java, but only until the end of the year), and NPAPI is required for the Java plugin.
As of 2016 you can use jpro without any browser plugin. And it even runs on mobiles.
Edit 1: The project is free for non-commercial or open source projects. A "hello world" can be found here
I found solution by chance here.
what was missing in my web project.
I must add this to web.xml file :
<mime-mapping>
<extension>jnlp</extension>
<mime-type>application/x-java-jnlp-file</mime-type>
</mime-mapping>
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
Now I am Using Netbeans IDE 7.2 to develop Industrial Applications.
But my friends told me that the applications developing using Netbeans are not standard.
They suggest me eclipse. But I hear that developing applications in eclipse is not easy as in Netbeans.
I want to know which are the industry standard tools for developing java applications.
How could i easily develop standard java industrial applications.
Please help me.
There is no exact industry standard. Netbeans as fine an IDE as any and it is up to personal taste or goals what you exactly need.
Eclipse a very commonly used IDE, so also a good choice. It's free and has loads of plugins available.
Another option is IntellijIDEA. Downside here is that if you want to use the extra features they build, you will have to buy a license. But there is also a community edition which gets most of the work done, but you will have no Java EE server integration for example.
Als for your question about develop standard java industrial application, any of the above IDE's will do, you just need to try them out which one fits you best. Having specific needs (for example, mobile development, using a specific Java EE server), might narrow the choices, or give you other alternatives (jdeveloper, ibm rational application developer to name a few).
If you are good with one, you will not have any problems with another. Both Netbeans and eclipse are feature rich and freely available.
Eclipse is the standard IDE for the industry, may be because it was made by IBM.
Why I use netbeans
Netbeans comes pre-installed with many plugins
Netbeans has a better looking UI than eclipse.
You hardly need any configuration with netbeans.
But it is on the heavier side as compared to eclipse. You will find most examples on the web using eclipse, expects demos on oracle's site.
It depends on what you are developing.
For example, if you developing a desktop applications. Netbeans comes pre-installed with GUI builder and supports development of java rich internet applcations (javafx, webstart, applet), as it is
developed by Oracle.
On the other hand, for android development, eclipse is the industrial standard. Since google wants you to use eclipse.
You can try using STS as well, as it is the tool with inbuilt spring perspective
Eclipse or Netbeans, both are "standard" (if that word fits at all in the definition of what is standard). You could even skip them both an use just a plain old text editor. Is just a matter of personal preferences.
There is not standard IDE for developing in Java.
Eclipse is one of most used, but there are other IDEs (Netbeans, STS, and so on).
Is a developer choice.
Closed. This question needs to be more focused. It is not currently accepting answers.
Want to improve this question? Update the question so it focuses on one problem only by editing this post.
Closed 4 years ago.
Improve this question
I'm staring a new project using Spring3-MVC w/ Hibernate and MySql and am envisioning the following development setup:
Maven
Eclipse IDE (Having used netbeans in the past, I want to give Eclipse a run)
Tomcat
Questions:
What will be the life-cycle of development?
I've developed struts2 applications with the GF application server and Netbeans IDE in the past. The setup and lifecycle of making a change has been quite slow. Making change to java code, netbeans building code, deploying to GF. I understand these are common points of working with java and webapplication unless I go the Grails way. However, now since there are a few container-less solutions for java web apps - does it make the process a bit fast/east?
Should I use the embedded Tomcat plugin?
In netbeans there is a way to add servers and start a maven project by associating the project with the server. Is there something similar in Eclipse?
Which version of Eclipse should I be downloading?
There seem to be so many I downloaded the javaEE version but it didn't have a way to start a maven project.
You can use embedded tomcat plugin, if you are going with Maven, go with maven tomcat plugin. And deploy your application with:
mvn tomcat:run
In netbeans there is a way to add servers and start a maven project by
associating the project with the server. Is there something similar in
Eclipse?
Yes you can add tomcat server in eclipse, and start/stop tomcat within eclipse, it also allows you to debug easily, by just adding the source projects.
Which version of Eclipse should I be downloading?
Latest :) Eclipse Juno 4.1 I believe.
For starting on maven project, check the maven getting-started guide
Also, you can use maven plugin for eclipse m2eclipse
If starting from scratch I'd recommend using spring boot.
Regarding eclipse, you should get the version 'for java developers' but not the EE version unless you plan on using glassfish or JBoss or some other EE container. Even if you did need the EE version I'd download and use it separately.
It has been a decade since Microsoft ASP.NET has conquered the entire web application development community.A latest alternative have been developed which is known as ASP .Net MVC development. Model View Controller (MVC) is the new thing in the present era that has caught the fancy of many web development companies.
Closed. This question is off-topic. It is not currently accepting answers.
Want to improve this question? Update the question so it's on-topic for Stack Overflow.
Closed 11 years ago.
Improve this question
I have been a project manager so far in a small company that focuses on PHP and .NET Development. No Java Development.
I learnt Java and J2EE 4 years back. I know things changed radically now. I would like to dive back to Java Enterprise Development. Can you guys tell me what the typical Development Environment is like in the big / small companies for Java / Java EE? Lot of friends who are in Java Development says, they use Spring and Hibernate.
What I would like to know is things like this...
Eclipse or NetBeans IDE or some proprietary IDE? Do we get to choose the one we are comfortable with?
Local or Remote Web and App Servers?
I see that when I create a simple Java Project using eclipse, it adds some eclipse related tags / classes in the config files. Is this acceptable?
And so on...
Hope my question makes sense...
Please shed some light. Thanks in advance!
Eclipse or NetBeans IDE or some proprietary IDE?
IntelliJ from JetBrains is the best Java IDE out there. That's what my team uses.
Do we get to choose the one we are comfortable with?
Depends on where you work. I think it makes sense to allow the workman to choose his/her tools.
Local or Remote Web and App Servers?
We use Spring, so developers use Tomcat to deploy locally. The web servers exposed to the outside world are maintained by others; usually IIS or Apache. The app servers are JBOSS 5.
I see that when I create a simple Java Project using eclipse, it adds some eclipse related tags / classes in the config files. Is this acceptable? And so on...
Your IDE should not add anything that you don't want. I personally don't care for Eclipse.
Eclipse or NetBeans IDE or some proprietary IDE? Do we get to choose
the one we are comfortable with?
It depends. In a company I last worked for, they loved NetBeans while I preferred Eclipse (more configurable than NetBeans IMHO). NetBeans, however, is now owned by Oracle (formerly Sun) and thus comes with integrated Java EE packages to start with Development right away (includes GlassFish and Tomcat bundled). Eclipse Java EE doesn't include a webapp server.
Local or Remote Web and App Servers?
That totally depends on the company.
I see that when I create a simple Java
Project using eclipse, it adds some
eclipse related tags / classes in the
config files. Is this acceptable? And
so on...
These config files doesn't affect your project when exporting it to JARS/WAR/EAR, etc. Those config (.project, .classpath) are basically your project information Eclipse uses. NetBeans does the same. If these do affect your project when exporting, rather use Ant/Maven to build your project.
You'll get as many answers as there are software companies.
I'll speak for mine:
Eclipse
Tomcat for local and remote
I'm not sure what you mean here. Eclipse will definitely need .project and .classpath files if you want to share project, but I am not sure that it adds tags to config files.
Definitely look into maven for builds, using it makes your projects ide-agnostic, and you can have people using eclipse or netbeans or whatever is their favorite and still be able to contribute.
The ones that are used in the Java shops around here are mostly Eclipse, with the latest version of Netbeans gaining popularity. Personally I find Eclipse to be decent and meets my needs, but YMMV