aspose file tools*
The moose likes OO, Patterns, UML and Refactoring and the fly likes front end choice Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login


Win a copy of Soft Skills this week in the Jobs Discussion forum!
JavaRanch » Java Forums » Engineering » OO, Patterns, UML and Refactoring
Bookmark "front end choice" Watch "front end choice" New topic
Author

front end choice

kundan varma
Ranch Hand

Joined: Mar 08, 2004
Posts: 322
Hi All,
I have given the responsibility to change a power builder mini ERP package to J2EE. I am confused whether to use swing for front-end or to use HTML. I an not sure if i use swing then how long will it take to get downloaded to client's desktop. What you guys suggest.Any good link to study for this.
Thanks and regards,
kundan


SCJP1.4,SCBCD,SCEA,CNA
Failures are practice shoots for success.
Raghubir Bose
Ranch Hand

Joined: Feb 18, 2006
Posts: 88
For intranet applications you can think of Fat clients !!..but the entire world is going towards portal technology ..portals and portlets can be a lot better. More soever since we are talking of ERP ... some reports might be required for senior management ..who may be on the move ...these people specifically require dashboards and graphs ...which they can view in their laptops on airport terminals ..just kidding ..what I mean to say is a web based front end would defintely be more scalable than a swing frontend.

my recommendation would definely be for using web based front end.


I will meet the fairy queen soon !
kundan varma
Ranch Hand

Joined: Mar 08, 2004
Posts: 322
Mr Bose,
Since its a ERP kind of project so frond end should be complicated and must be user-friendly and cross browser support should be there. These things make browser based approach a bit difficult. Can you throw some light on this also.
Thanks and regards,
kundan
Raghubir Bose
Ranch Hand

Joined: Feb 18, 2006
Posts: 88
I agree that browser based solution offer compatibility problems due to cross browser compatibility..but I understood that the application is an ERP application ..which essentially means an application used by a given enterprise.We need to know more about the non functional requirements of the application.If it is a single organization then IE still happens to be a platform of choice.In very few scenarios do the users demand non IE solution.Since for organization windows is still the standard desktop.They might definitely go for non windows server setup because of robustness and IBM/Sun normally is a platform of choice.

With this introduction can you please let me know ..if for an ERP package different browser is a requirement..I barely think so.Organizations do not normally have a mixed bag of desktop.

Now since you are porting an existing windows based app(is the powerbuilder app running on non-windows?) to a J2EE solution , it is expected that the users might want exact functionality as they are used to in the windows environment.

I have faced this situation n number of times where ..the users are expecting that a browser will behave like a fat client.If you are the architect of the app..kindly tell your business manager that a browser has been designed with a purpose.It has got features that traditional windows application cannot give.Also it has got some backdrops which can be adjusted if the user wants.

A few problems that I know which can happen in any browser based development/porting projects irrespective of what browser we are using.

1. How do you control shortcut keys (which can be easily done in windows based app? In browser there is a Alt+ key+enter ..but that also has its own problems )

2. No of instances of the browser that you can open using ctrl+n and the problems

3. Session management and timeout

4. Window managenment (somewhat related to 2 ..but here I am specifically saying popups.)

5. Screen refresh- Onsubmit the user does not want to see screen refresh.

Now I also do not agree , that ERP means that the front end should be complicated.Since you are porting the app ...you might need to have the same look and feel as the client server system.You need to have a compromise.The user will have a light wight front end as a bargain ... than a fat slowmoving client.Swing apps are slow and all the organisations for whom I worked for and had fat clients have or are planning to go for thin client.Even porting apps are towards web

There are several ways to tackle the issues I told you ..you need to think about it.But first ..user acceptance ..a browser based client is different that a windows based client..this thay need to understand and accept.
Mark Spritzler
ranger
Sheriff

Joined: Feb 05, 2001
Posts: 17260
    
    6

but the entire world is going towards portal technology


Ne careful of making these sweeping statements that says that everyone is going in that direction. That just is not true.

If it is a single organization then IE still happens to be a platform of choice


Not as sweeping, but still too much in that direction.

I have faced this situation n number of times where ..the users are expecting that a browser will behave like a fat client.If you are the architect of the app..kindly tell your business manager that a browser has been designed with a purpose.It has got features that traditional windows application cannot give.Also it has got some backdrops which can be adjusted if the user wants.


Yes, I agree, trying to get the exact smae functionality in UI terms between a rich fat client and the web is difficult, and must be addressed before embarking on your project. They must know up front that you have to readdress the functionality to work for the web, if you go in that direction. (See I don't always disagree with you )

fat slowmoving client.Swing apps are slow


That is just not true. The inners of how the app was developed could make a Swing app slow, just as the same can happen in a Web Based app. You just need to follow MVC correctly, and make sure your network traffic is as minimal as possible. (OK, so I am back to disagreeing with you, sorry )

Now with all that said. There are a lot more choices out there that can be made for making a great application. There are pros and cons for all of them. Personally, I wish you could use VB to create the front-end, and J2EE on the middle tier. You can use a Com to Java bridge to do that.

Anyway, I haven't really helped you to choose between Swing or HTML. But I want to make sure you hear all sides of the story.

Mark


Perfect World Programming, LLC - Two Laptop Bag - Tube Organizer
How to Ask Questions the Smart Way FAQ
Raghubir Bose
Ranch Hand

Joined: Feb 18, 2006
Posts: 88
I am in a hurry to get things done .....

but really wanted to share this link

http://weblogs.java.net/blog/joshy/archive/2005/03/why_dont_you_sh.html

..your views please..I am not trying to abuse swing since I have not developed enough swing apps to tell that ..the last time we did try to develop a swing app was way back in 2001 .. and the experience was not a good one and in the end we had to convince the end users that thin client is a better solution ...but I agree that many would curse me for saying this ..

I agree that swing or fat clients has got advantages which we cannot under estimate ..simply because the rich feature they offer and with the advent of web start it is even better ..but you see anything light is more acceptable ..we like to have things more portable ...so we can move it easily ...and yes light things tend to be fragile (my iPod Nano is !! ) ...
kundan varma
Ranch Hand

Joined: Mar 08, 2004
Posts: 322
Hi Mark and Mr Bose,
Both of you have given a lot of good input. Let me clarify you Mr Bose about my requirement. Its a convertion project but not for existing client. This is a product so may be some client may not like internet explorer. If i have to fix IE as specification then i can make IE behave like rich client without any problem as i have done a very big project convertion like this and it was a successful running project all over the world for shipping industry. But now my requirement is bit different but still any SME product has many dynamic UI requirements to set most data in one screen.
As far as swing is concerned, well its not slow if already installed on client, what my reason for worry is if it has to get downloaded to client machine. I am not very sure and knowledgable about webstart. Mark, you idea about VB is also very nice but i want to avoid VB for platform dependency as i dont know about my client as this is a product. Also com to java bridge has some disadvantage also related to performance and scalability.
What if i go for mixed approach that is some component of swing and browser. Just a thought, need your expert comment about this. Also let me tell you guys, i recently attend one seminar on NETBEANS IDE and it has a very good support for making swing client like VB has. Also client made through that IDE is fully portable to different platforms without any change of alignment and we dont have to think a lot about gridbag layout.
Still need lot of suggestion from all ranch members on this area.
Thanks and regards,
kundan
Roger Chung-Wee
Ranch Hand

Joined: Sep 29, 2002
Posts: 1683
I spent quite a lot of time working on some applications which have Swing clients making web services calls to EJBs. The clients needed:

- a JRE
- the JAR files for the app server (WebLogic Server)
- some files for encrypting the requests
- the Swing client code

It's the client code which usually had to be reinstalled whenever there was a change. It should not normally be a major problem for most people, especially if packaged as compressed JAR files.


SCJP 1.4, SCWCD 1.3, SCBCD 1.3
manuel aldana
Ranch Hand

Joined: Dec 29, 2005
Posts: 308
if you use a desktop (fat client app) or whatever, you should use swt, which is used by eclipse too.
of course swing is not as slow as it used to be, but swt is most likely faster because it uses native gui-library.

my opinion (webapp vs. desktop app):
for "proper" heavy applications i would go for a fat-client app (swt or swing). for instance i can't imagine eclipse being a webbased app...

for upgrading/patching issues you could use 'Java Web Start'.

maybe one day, if ajax.xx is emerging, there won't be any desktop applications. but i think that will take some time. don't bet all your money on current hype-technologies, which have to prove their promises.

to be future safe, seperate presentation and business-logic so it is easier to switch from desktop-app to web-app. so migrating doesn't mean to write the whole application from scratch again (no manager would pay for).

i know it is a difficult decision. good luck anyway


aldana software engineering blog & .more
Raghubir Bose
Ranch Hand

Joined: Feb 18, 2006
Posts: 88
May be one can think of having a web presentation component and a Client Side presentation component ..and the user can choose from it ? This would make things more flexible ? Off course if you have the time for it ???
 
I agree. Here's the link: http://aspose.com/file-tools
 
subject: front end choice