As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 9 years ago.
We just started a new project in Java EE in our office and i am required to participate effectively. I mostly work on web applications and I use PHP/MySql but I also know Java SE and have written couple of standalone applications.
I need help and advise on how i can learn Java EE very fast so that I can blend into the project without difficulties. I need help with book & tutorial recommendations and also links to resources.
This vastly depends on your learning speed. What I do in such cases:
read small parts of tutorials in order to obtain a general idea of the technology
experiment, and whenever I don't understand something, I return to the tutorial, or google about the problem.
After creating a non-trivial, but still simple application with the technology in question, you can go to the real world. Still, there must be someone more familiar with it, whom you can ask.
For JavaEE I'd suggest the following exercise:
create a stateless EJB that starts an EJB timer. The timer has to fire on a configurable in the database period of time
the timer should send messages to a JMS Topic
the JMS topic should be consumed by a message-driven bean
the EJB should be called by a servlet, telling it whether to use the db-configured period of time, or use a default one.
the messages to the JMS topic should consist of the IDs of objects stored in the database
on receiving the IDs the MDB should increment some number of the object and persist it
use JPA for persistence.
Here, you'll have servlets, EJBs - stateless and message-driven, timers, JMS and JPA covered.
Refer to the Sun JavaEE tutorial and google anything you don't understand immediately.
To learn it fast use a IDE to do most of the config for you. netbeans works really well with a number of containers and relieves you from a lot of the config etc...
If you take a look on netbeans.org there are some really good short tutorials just to get you going.
Related
As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 9 years ago.
Googling this question returns lots of results with marketing jargon.
What I am looking for is a summary of what it does, more along these lines What is Maven?
This is the closest I could get.
"WebSphere" in the most abstract sense is a brand encompassing various products, so "a brand" is about as good an answer as you can get.
What one usually refers to when saying "WebSphere", though, is the WebSphere Application Server, which (as the name implies) is an application server - something that runs EJBs and other server-side Java technologies like servlets, JMS, etc. An example of another important player in this space is JBoss AS.
Finally, another possible definition of "WebSphere" is "its creator's biggest technology mistake" ;)
Unlike a regular web server which simply provides clients acces to html-documents, which their browser then displays as websites, an application server allows for programms/scripts to be invoked by requesting websites, which dynamically generate the websites.
In this case the scripts are written in Java. This allows for a lot of the apis provieded in Java to be utilised by your web-application (the website itself is simply the frontend of your webapplication)
So web sphere is an application server from IBM. Simple as that. This tells you what it can do.
Hope that helps.
WebSphere is an application server which supports a lot of advanced functions including load balancing, database connection managing, advanced logging options and many more.
On the other hand it introduces severe overhead, is difficult to administrate and one has to learn a lot to use it effectively. And more often than on other servers you find yourself in JAR hell. Been there.
As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 10 years ago.
I want to code a server daemon application that provides some backend functionality. I'd like to stick to Java since I'm pretty familiar with this language and I figure it'd be much easier to just dig into a new framework and not a new language in parallel.
So far I found many promising frameworks, but all of them resemble somehow a webserver. Thing is, I don't want to code a web-application in terms of web-sites so I doubt that I'll need all the webserver-functionality such as templates and this stuff.
What would be a good suggestion for this purpose or would using a regular web-framework such as "play" without the template-stuff be the best choice?
JAX-WS is a standard for creating SOAP web services. Wikipedia link to see what it is about.
For RESTful you would need to make http requests, usually get and post and this type of service works best if you develop a website. From what I understand you don't want this, but still if ever just check the spring framework.
Raw TCP/IP is so much harder and unless you know exactly what you want (performance and optimization wise) you`re better off using a framework.
A webserver is used to implement webservices. A webserver may serve more than html to clients.
I have a personal "stack" using for a long time that is Jetty + RESTEasy and it serves no html at all (only XML and Json).
Javascript + Rest (Glassfish + Jersey for rest). Glassfish – Java EE Full profile certified reference application server (server will used for REST host).
As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 11 years ago.
The community reviewed whether to reopen this question 1 year ago and left it closed:
Opinion-based Update the question so it can be answered with facts and citations by editing this post.
I've been learning Spring and I'm really liking what I'm learning, but feel ill-equipped to do anything at the moment. I know Java really well, I'm ok at ant, but I don't know anything about: J2EE, JSP, Servlets, Tomcat, Maven, Hibernate, JPA, and I've never made any kind of website using Java (I've made lots of applications in Java, but all websites I've made were using PHP).
Should I cement some of my knowledge of the "basics" or should I keep slogging away at Spring?
Spring is a monster. It all depends on what part of Spring you are interested in. A good starting point would be the Dependency Injection container, which requires none of the technologies that you are unfamiliar with (the ones from your question).
If you are interested in learning Spring MVC (which it sounds like you might be based on the technologies you mention), I would recommend learning the basics in these (again from your question):
Servlets
JSP
Tomcat (or another web application container)
For Spring MVC I would also look at the idea of RESTful web services.
You can find a (likely) comprehensive list of Spring projects at this link.
I would recommend three things:
Lots of Reading => Spring Documentation in a Single Page
Lots of Coding => You can start off by getting an example Spring / Hibernate project. And then use Spring Tool Suite, which includes many interactive tutorials, and template projects that just work without any coding at all.
Find a Spring User Group next to the place you live. If there is no such group => create one!
It is totally ok that you don't know JSP / Servlets / Tomcat / J(2)EE / etc. Extremely smart people who, for example, write Linux kernel (which is a lot more complex) may not know it as well. The beauty of Spring is that going through it, and reading about best patterns and approaches you'll get all the above. No need to learn J(2)EE separately. Spring is J(2)EE of today.
For a good enterprise developer, I would recommend
a) very very good core java ( including collections, jdbc , threads)
b) servlets
Then I think you can start diving into spring.
If you want to accomplish something quickly to start with, definitely look at JSPs. A JSP is basically an HTML document with some special <% %> tags where you can just shovel in java. It's really entertaining, although nothing you'd want to use for a large-scale application.
As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 11 years ago.
I am looking for a off the shelf workflow engine to be used in my Java based web application. Following are my initial requirements -
The engine should have a nice UI to create/manage workflows.
Should work with Oracle database
Provides java api or web service api to interact with workflow from my application so that I can build logic on the workflow.
Ability to define custom business rules.
As of now I am looking at JBoss JBPM and Drools together. Do let me know if you have experience of this or other contenders which I should consider for evaluation?
You could try Activiti. I am personally experimenting on that. It's really easy to install and
use. It's similar to jBPM. So you would not have any difficulty if you are familiar to that.
You could also refer the comparison between them.
Hope this helps you.
yes i agree with you, jBPM is a flexible Business Process Management (BPM) Suite. It makes the bridge between business analysts and developer
and
drools is good and well manged rule engine , i recommend these both to use, but you will not have ready functionality like work with oracle database its individual functionality independent from this
I'd encourage you to check this list of Open Source Workflow Engines in Java
Scientific Workflows : Kepler, Taverna <--- these are both data intensive, and are easily distributable. They were designed to deal with genomics/planetary data, etc...
For business workflows, check out JBoss JBpm, which is transactional (i.e. its not optimized for massive computationally intense workflows, but rather, its written to support business workflows that need security, database transactions, etc.
As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 11 years ago.
I'm working on a practical work for college, and I have to develop a web-app that could be used by all the teachers from my province.
The application should let the users (teachers) manage some information related to their daily duties. One of the requirements is that I must use
Google App Engine platform for developing and hosting the web application.
I have 2 months to finish the work.
I have some intermediate knowledge of C++, so what language (Python or Java ) and web framework do you think would the best to
develop the application in less time?
I know this is not a strictly programming questions, but please don't delete this post at least until I get a
few answer in order to have an idea of how to proceed.
Many thanks in advance!
I would recommend using Python + Django framework. I love Java, but for the Google App Engine there is much more documentation online for Python.
I would recommend taking a look at Java + slim3. I have my own MVC framework for AppEngine (PhD thesis work), and I really wish I had started after slim3 came out. I'd be using it myself. I can't really speak vs using Python on AppEngine, but I don't think I'd recommend any other Java framework vs slim3. I've tried a few. As an example, I use Struts2 at work. I would not recommend Struts2 given your timeframe -- the learning curve would make your deadline ambitious. Part of this is just due to the fact that Struts2 isn't quite a full stack (saving data in AppEngine is a big deal when you are first learning), which makes only some documentation useful for your particular project. Slim3 sidesteps this by being explicitly targeted to AppEngine.
Go with python and default webapp framework . As you are new to both java and python. Appengine on python has been there for sometime, you will find lots of solution on python as it was introduced earlier. Learning curve is very small in python when compared to java according to me. Also go for eclipse with pydev plugin as your IDE. This will make your deployment and development much easier . Google 's own documentation is the best place to start.
All you need to do is spend some time reading the whole documentation patiently . Even i started with appengine very recently.