12-16-2010 12:07 PM
I am new to BB development but am a seasoned Java developer.
I have serched the forums and scoured the BB dev documentation but can not find the exact answer.
How do you deploy a web app containing a widget to an app server such as tomcat and eventually Websphere so that BB users can access the web app (transparently download the widget-based app), and run it on their BB?
I am thinking of Java applets that are referenced within the html/JSP or a .jad file that is requested in a URL that is entered in the web browser.
Typically you deploy web apps in an app server in the form of a .war file. Can you just deploy the .jad file like a .war file?
I also already read that you deploy all .cod files alongside the .jad file.
Thanks a lot for any help.
12-17-2010 09:52 AM
When you use the BlackBerry WebWorks development tools (either the plug-ins for Eclipse or Visual Studio, or the command line packager) to compile an application, it should create two folders:
12-23-2010 05:40 PM
Thanks, Adam, for your long response.
I am now able to download into the simulator browser my simple widget app from a tomcat server instance running in eclipse.
I am able to debug in eclipse the widget app running in the simulator (very cool), but I get the following error:
ReferenceError: abc is not defined.
alert( abc.list() );
to my JS extension, where I have all the subclasses defined for Scriptable, ScriptableFunction, and WidgetExtension, placed the jar of source in the ext folder of the widget project, zipped-up the widget project directory, and ran the blackberry loader on the zip file to create the jad and cod files.
I defined feature abc in the config.xml and in the JS extension's library.xml file.
What else is needed for the blackberry browser to see the definition of abc as an object to link it to my JS extension?
12-27-2010 01:48 PM
I did not code the Scriptable.getField() function correctly. I did not return the ScriptableFunction subclass instance.
I was doing in getField() what I should do in ScriptableFunction.invoke().
Thanks again, Adam, for your help.