I'd like to build a plugin style architecture where other developers can add their own pages/components built with SmartGWT or other. Any advice on how to proceed? Can I run other javascript modules built with smartGWT (or other GWT components) in an HTMLPane? thanks.
Announcement
Collapse
No announcement yet.
X
-
There are a lot of different requirements you could be trying to address: just being able to upgrade the application without users noticing vs adding new functionality at runtime vs loading some functionality from other servers in a federated architecture vs providing a tool that allows new functionality to be added at runtime via a web interface.
If you can explain which of the scenarios above you're in, and provide as much detail above your requirements as possible, then we can provide a specific answer.
Comment
-
Our required scenario is as follows,
1. The main application will be deployed in server (cloud). Users will be accessing and using it.
2. New feature will be provided as a plugin and informed to users about its availability.
3. Permitted User should be able to access the plugged-in feature as a part of the main application.
This is mainly as adding new functionality at runtime.
Comment
-
apara's question is a good one. If you don't want to affect the existing application, you can just have a development process standard where you don't make changes to the base application unless there are special reasons. Then you can just redeploy it, unchanged.
More exotic solutions like loading applications from other domains are available, but you haven't indicated that you actually need to go down this more complicated road.
Comment
-
This is a complex topic, a lot of which does not have to do with SmartGWT, and subtle differences in requirements can lead to quite different approaches being used. You keep repeating the word "plugin" - this does not clarify requirements. If you need more help, please return to the previous questions and provide as much detail as you can.
Comment
-
The way the additional feature acts will be as a plugin. But, actual requirement is,
The main application (A) will be running in the server.
The extra feature (B) will be added to the server.
For example, application 'A' is having tabset control.
If 'B' is available, then the a tab opened in 'A' and shows the screen in 'B' under a tab in 'A'.
Similarly, if one more application 'C' is available, it will be shown in another tab of application 'A' itself.
The war files for applications 'A', 'B', 'C' all will be placed in the same web server.
Comment
-
Still very superficial. Try these questions for starters:
1. do added features include just client code, or client and server code?
2. are added features produced by developers, or by non-developers using visual tools?
3. must added features involve all the features of GWT/Java, or could they be limited to a more basic, XML-based declarative format for UI
4. must the added code be runnable as it's own separate GWT application?
5. do added features use classes of the main application (hence it is a compile-time dependency)
6. must added features be a separate .war, or could they be added to the existing .war (via upload, hot deploy, etc)?
7. do the added features require the ability to make calls to widgets created by the main application?
Comment
-
Thanks for the questionaire.
1. Added features include only client code.
2,3. Added features produced by developers and it involves GWT/Java.
4. Added feature, no need of runnable as it's own application
5. No, added feature don't use classes of main application.
6. Yes, it must be a separate .war, which can be added to web server.
7. No, added feature will use its own or SmartGWT widgets.
Comment
-
An HTMLPane with contentsType:"page" satisfies these requirements. This is basically just an HTML <iframe>.
Interaction with the main page, especially GWT Java calls to components in the main page, would be much more complicated - if you end up needing this, you should take advantage of our consulting services (too in-depth for just forums support).
Comment
Comment