最新消息:雨落星辰是一个专注网站SEO优化、网站SEO诊断、搜索引擎研究、网络营销推广、网站策划运营及站长类的自媒体原创博客

javascript - Java web app as desktop app, which frameworks should I choose? - Stack Overflow

programmeradmin0浏览0评论

I need to make a web app that I would be able to install as a desktop application on a client PC (database, jetty+war, firefox/chrome/sth portable).

The application is a quite big search app (I MUST use Lucene). There are only few screens, some dependencies in search queue, etc.

Now I need help in choosing correct ponents. Application must be:

  1. Light - minimalistic and user friendly frameworks (Java + JavaScript)
  2. Efficient - working on old PCs and working fast
  3. Developer Friendly - I would love to write it with pleasure ;)

So my questions are:

  • Do you have any suggestions about choosing ponents?
  • What frameworks, what obfuscator?
  • Do you have any ments about making a web application a desktop application?
  • What are the main risks?

I need to make a web app that I would be able to install as a desktop application on a client PC (database, jetty+war, firefox/chrome/sth portable).

The application is a quite big search app (I MUST use Lucene). There are only few screens, some dependencies in search queue, etc.

Now I need help in choosing correct ponents. Application must be:

  1. Light - minimalistic and user friendly frameworks (Java + JavaScript)
  2. Efficient - working on old PCs and working fast
  3. Developer Friendly - I would love to write it with pleasure ;)

So my questions are:

  • Do you have any suggestions about choosing ponents?
  • What frameworks, what obfuscator?
  • Do you have any ments about making a web application a desktop application?
  • What are the main risks?
Share Improve this question edited Aug 18, 2010 at 11:26 Andy E 345k86 gold badges481 silver badges451 bronze badges asked Aug 18, 2010 at 11:09 tzimtzim 1,76515 silver badges39 bronze badges 1
  • 1 The First Rule of Program Obfuscation: Don't do it. The Second Rule of Program Obfuscation (for experts only!): Don't do it yet. – Thorbjørn Ravn Andersen Commented Aug 18, 2010 at 11:24
Add a ment  | 

3 Answers 3

Reset to default 5

Many Java web apps distributed in this style are done so alongside a lightweight application server or web container such as Jetty or Tomcat.

When you click to start the application, this actually starts the container which internally hosts your application. (You're application can be packaged as a WAR internally.)

For lightweight databases, possibly look at SQLLite, HSQLDB, or Apache Derby. These can also be distributed alongside the application. Or maybe you can just collect database credentials as part of your install process and let the customer maintain their own database.

The arrangement you describe will involve work and custom scripting. You're going to the trouble of creating a thin, multi-user, web application and then throwing away the main benefit - the shared single instance. Customers, eh, who'd have them! :-)

Maybe you could take a look at Google's GWT. You can write Java code and it will then "pile" it to JavaScript. Using it feels like using a desktop app. Gmail, Google Wave,... have been created using this technology.

I think you don't even need a webserver, but the piled result is pure JavaScript + static HML pages. If you then create a Chrome application shortcut it'll really look like a desktop app ;)

The only thing is that the learning curve will be a bit steep initially but if you're eager to learn, then it's really cool stuff and you can manage it easily.

Ha, I'm in the same boat. But I have many screens like normal web apps.

My suggestions is: 1, take web easy, no framework. Since there's little web pages, html+jquery+css is remended; 2, lightweight database is not important. Because mysql does cost little memory, and it's user-friendly, large munity. 3, So pay your attention on your search engine, and happy coding.

发布评论

评论列表(0)

  1. 暂无评论