Top Banner
BlackBerry WebWorks Plug-in for Eclipse Version: 2.5 Development Guide
22

Blackberry Web Plug in for Eclipse Development Guide 1218770 0920045712 001 2.5 US

Nov 28, 2014

Download

Documents

nagesh_vejju
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Blackberry Web Plug in for Eclipse Development Guide 1218770 0920045712 001 2.5 US

BlackBerry WebWorks Plug-in for EclipseVersion: 2.5

Development Guide

Page 2: Blackberry Web Plug in for Eclipse Development Guide 1218770 0920045712 001 2.5 US

SWD-1218770-1202050647-001

Page 3: Blackberry Web Plug in for Eclipse Development Guide 1218770 0920045712 001 2.5 US

Contents1 Developing BlackBerry WebWorks applications and web pages......................................................................................... 2

Create a BlackBerry web application project.............................................................................................................................. 2

Create a BlackBerry WebWorks application project.................................................................................................................... 2

Securing BlackBerry WebWorks applications.............................................................................................................................. 2

Allowing access to external resources and APIs................................................................................................................. 3

Update the configuration document for a BlackBerry WebWorks application........................................................................ 3

Configuration document for a BlackBerry WebWorks application................................................................................... 3

Specifying permissions for BlackBerry WebWorks applications........................................................................................ 8

Using JavaScript extensions with BlackBerry WebWorks applications..................................................................................... 9

Add a JavaScript extension................................................................................................................................................... 9

Signing .cod files for BlackBerry WebWorks applications.......................................................................................................... 9

Obtain and install signing keys............................................................................................................................................ 10

Compiling BlackBerry WebWorks applications............................................................................................................................ 10

Specify the build parameters................................................................................................................................................ 10

Build and sign a BlackBerry WebWorks application........................................................................................................... 11

2 Debugging BlackBerry WebWorks applications and web pages.......................................................................................... 12

Debug a BlackBerry WebWorks application or web page.......................................................................................................... 12

Start and stop debugging.............................................................................................................................................................. 12

Debugging dynamic content......................................................................................................................................................... 12

Debug a remote web site............................................................................................................................................................... 12

View the profiling data for project resources.............................................................................................................................. 13

View HTTP request and response information............................................................................................................................ 13

3 Testing BlackBerry WebWorks applications............................................................................................................................ 14

Specify the BlackBerry device to simulate................................................................................................................................... 14

Run a BlackBerry WebWorks application or web page in the BlackBerry Smartphone Simulator........................................ 14

4 Making BlackBerry WebWorks applications available to BlackBerry device users........................................................... 15

5 Glossary......................................................................................................................................................................................... 16

6 Provide feedback......................................................................................................................................................................... 17

7 Legal notice.................................................................................................................................................................................. 18

Page 4: Blackberry Web Plug in for Eclipse Development Guide 1218770 0920045712 001 2.5 US

Developing BlackBerry WebWorks applications and webpages

1

Create a BlackBerry web application project1. In Eclipse®, on the File menu, click New > Other.

2. In the New dialog box, expand Web.

3. Click Dynamic Web Project. Click Next.

4. Type a name for the web application project.

5. Click Finish.

6. When prompted, click Yes to associate the project with the Java® EE perspective.

Create a BlackBerry WebWorks application project1. In Eclipse®, on the File menu, click New > Other.

2. In the New dialog box, expand BlackBerry.

3. Click BlackBerry WebWorks Project. Click Next.

4. Type a name for the BlackBerry® WebWorks™ application project.

5. Type the name for the web page that displays when the BlackBerry WebWorks application starts.

6. If you want to load a page in the background, select the Background start page check box and type the name for the page.

7. Click Finish.

8. When prompted, click Yes to associate the project with the BlackBerry WebWorks perspective.

Securing BlackBerry WebWorks applicationsThe content of your BlackBerry® WebWorks™ application runs inside a standard BlackBerry device application, so the applicationcan use the same policy and security configuration that other BlackBerry device applications use. You must obtain a signing keyto sign the .cod file for your application. You do not need to sign an application to run it in the BlackBerry Smartphone Simulator.

Inside a BlackBerry WebWorks application, you can specify that the application can access BlackBerry WebWorks APIs for adomain in an executable context. An executable context is a container in which you can run JavaScript® code within the contextof a web page. An executable container can be a page, a frame, or an iframe. If a local page provides the BlackBerry WebWorksAPI with access to the menu and linked in JavaScript code, you can include the domain by using application permissions for theexecutable container without specifying any feature elements.

Development Guide Developing BlackBerry WebWorks applications and web pages

2

Page 5: Blackberry Web Plug in for Eclipse Development Guide 1218770 0920045712 001 2.5 US

Allowing access to external resources and APIs

By default, BlackBerry® WebWorks™ applications cannot access data from external resources. For example, a BlackBerryWebWorks application cannot retrieve an HTML web page or make an AJAX request to a web service, unless you configure theapplication to allow access.

To allow access to external resources and BlackBerry WebWorks APIs, you must specify in the configuration document for theapplication the resources and the APIs that you require. You can define the list of domains that your application is allowed toaccess and the BlackBerry WebWorks APIs that are allowed for each domain. You can define this list using application permissions.

The BlackBerry® WebWorks™ Packager follows the same origin policy for the resources that the application requests by matchingthe resources to entries in the permissions list.

Whenever you retrieve content from external resources, consider the following best practices to help make the application assecure as possible:• Provide JavaScript® access to sensitive APIs only to trusted and secure web sites.• Protect your communication channel by using HTTPS when you expose sensitive APIs to the domain.• Use the same precautions that you would use for a hosted web site, to protect against users with malicious intent.

Update the configuration document for a BlackBerry WebWorks application1. In the Package Explorer, expand a BlackBerry® WebWorks™ application project.

2. Double-click the config.xml file.

Configuration document for a BlackBerry WebWorks applicationThe configuration document for a BlackBerry® WebWorks™ application is an .xml file that contains the information that is requiredfor the various parts of the application. The configuration document includes the elements that define the namespace, the nameof the application, the application permissions, and the elements that set the start page and the icons to use.

Information

The Information section specifies general information about the BlackBerry® WebWorks™ application, and the entry points forthe application.

Name

The Name property specifies a human-readable name for a BlackBerry® WebWorks™ application that you can use, for example,in an application menu.

This property is required. If you do not specify a name, the application is not valid.

Development Guide Update the configuration document for a BlackBerry WebWorks application

3

Page 6: Blackberry Web Plug in for Eclipse Development Guide 1218770 0920045712 001 2.5 US

Description

The description property specifies a human-readable description of the BlackBerry® WebWorks™ application.

Version

The version property specifies a valid version number for the BlackBerry® WebWorks™ application, in one of the following formats:• x.x• x.x.x• x.x.x.x

This element is required. If you specify an invalid version number, the application is not valid.

Entry Points

The Entry Points property specifies the foreground and background start pages that the BlackBerry® WebWorks™ applicationuses when it starts. You can specify files that are outside of the BlackBerry WebWorks application archive by specifying a URLfor the location of each file. You must specify at least one entry point.

The Allow Parameters on Command Line Invoke check box enables you to pass parameters when the application runs fromanother application. For example, you can send a query string to include in the page URI when your application runs.

The foreground start page runs when you start the application from an icon. The background start page runs in the backgroundwhen the BlackBerry device starts or when you install the application on the device. You cannot access the background pagefrom an icon.

You can specify one or both entry points. If you only specify a foreground page, then the application runs when you click theapplication icon. If you only specify a background page (such as a listener application), then the application runs when you startthe device or install the application, and is not visible to the device user.

Loading Screen

The Loading Screen section specifies the properties, effects, and images for the screen that appears when the BlackBerry®WebWorks™ application starts.

Images and colors

The images and colors properties define the images and colors for your BlackBerry® WebWorks™ application.

Property Description

Foreground image The foreground image property specifies an image to display on the loading

screen. The image is centered on the loading screen.

Background image The background image property specifies an image to display in the

background on the loading screen. The image is scaled to fit the entire

screen.

Development Guide Update the configuration document for a BlackBerry WebWorks application

4

Page 7: Blackberry Web Plug in for Eclipse Development Guide 1218770 0920045712 001 2.5 US

Property Description

Background color The background color property specifies the color of the background on the

loading screen.

Show on first launch

The Show on first launch check box specifies whether or not the loading screen appears when the BlackBerry® WebWorks™application starts.

Show for local or remote pages

The Show for pages that are remote or local check box specifies whether or not the loading screen appears for local or remoteweb pages.

Transition Effect

The Transition Effect property specifies the type of transition that appears between screens. You can specify the duration of thetransition, in milliseconds. You can specify the direction for the Wipe In, Wipe Out, Slide Over, and Slide Push transitions.

Cache Configuration

The Cache Configuration section enables caching for the BlackBerry® WebWorks™ application and specifies the limits for thetotal cache and for individual items. When you change cache settings, data usage might increase beyond the minimum requiredfor the application. Make sure you understand the implications of changing these settings for a particular application.

Regardless of the cache settings that you configure, the following are never cached:• HTTPS requests• Authenticated HTTP requests• Any request method other than GET• Failed requests (with a response code other than 200)

You can use the following HTTP headers with application caching:• pragma: no-cache• expires• cache-control: no-cache• cache-control: no-store• cache-control: private• cache-control: max-age• date• content-length

Application caching ignores any other HTTP headers.

Development Guide Update the configuration document for a BlackBerry WebWorks application

5

Page 8: Blackberry Web Plug in for Eclipse Development Guide 1218770 0920045712 001 2.5 US

Property Description

Disable caching The Disable caching check box disables caching for the application.

Maximum total cache size This limit specifies the maximum cache size for the application. Any items

that exceed the maximum cache size are not cached.

Maximum individual item size This limit specifies the maximum cache size for items within the

application. The No limit radio button eliminates the limit.

If cache directives are not specified in HTTP

headers

This limit specifies the amount of time to retain the cache, if directives are

not specified in the HTTP headers. The Do not cache radio button specifies

that items without directives are not cached.

Permissions

The Permissions properties specify the domains and features to which the BlackBerry® WebWorks™ application requires access.

Author

The Author section of the configuration document specifies the information for the author of the BlackBerry® WebWorks™application.

Property Description

Author The author property specifies the author of the application.

Web address The web address property specifies a URL, for example, the web page for the

author of the application.

Email The email property specifies an email address for the author of the application.

Copyright The copyright property specifies a copyright statement for the application.

License

The License section specifies the text and URL for a license agreement for the BlackBerry® WebWorks™ application.

Property Description

License agreement The License agreement property contains the text for the end user license for

the application.

License URL The License URL property specifies a link for a URL that provides information

about the license agreement.

Development Guide Update the configuration document for a BlackBerry WebWorks application

6

Page 9: Blackberry Web Plug in for Eclipse Development Guide 1218770 0920045712 001 2.5 US

Configuration

The Configuration section specifies the icons, header information, focus-based navigation, and Back button behavior for theBlackBerry® WebWorks™ application.

Icons

You define the icon and hover icon for your BlackBerry® WebWorks™ application in the Configuration section of the configurationdocument.

Property Description

Icon The icon is the image that appears on the BlackBerry device for your

application in its regular state, when it is not selected.

The file name for the default icon is either image.gif, image.png, or

image.jpg. The file name is not case sensitive.

Hover icon The hover icon is the image that appears on the device for your application

when it receives focus, when it is selected.

If you do not specify a hover icon in the configuration document, the icon

that you specify for the icon appears, regardless of the application icon state.

Custom header

The custom header property specifies a header value that is added to every request for data that the BlackBerry® WebWorks™application sends. This header value enables you to distinguish application requests from BlackBerry® Browser requests.

Use focus-based navigation

By default, a BlackBerry® WebWorks™ application does not allow focus-based navigation. When you enable focus-basednavigation, BlackBerry device users can use the trackpad or trackball to give focus to an element on the screen of a BlackBerrydevice.

Override the Back button

By default, when a BlackBerry® device user clicks the Back button, the previous page displays.

You can override the default behavior for the Back button by specifying that when a user clicks the Back button, the BlackBerry®WebWorks™ application closes.

Connection

The Connection section specifies the order and timeout for network transports.

Development Guide Update the configuration document for a BlackBerry WebWorks application

7

Page 10: Blackberry Web Plug in for Eclipse Development Guide 1218770 0920045712 001 2.5 US

Property Description

Override the default connection order and timeout This property specifies the order in which you want the

BlackBerry® device to attempt to make a connection. The

default order for the connection manager appears in the

configuration document.

HTTP connection timeout When the device attempts to make a connection to a particular

transport, the timeout attribute specifies the timeout, in

milliseconds.

Specifying permissions for BlackBerry WebWorks applications

If your BlackBerry® WebWorks™ application allows access to the functionality on a domain, you must specify the domain in thepermissions section in the configuration document, so that the requests from your application are not blocked. You must alsospecify any APIs that the application uses.

For example, if you must update or change menu items from a domain, you must specify the domain and the APIs that yourapplication uses.

If your application accesses data from an unknown or changing domain, you can specify a wildcard character so that the requestsare not blocked. When you use the wildcard character, the web pages that your application accesses from an external sourcecannot access any of the BlackBerry WebWorks APIs.

Allow access to domains and features

1. In the Permissions section in the configuration document, click Permissions.

2. To allow your BlackBerry® WebWorks™ application to access a domain, click Add Domain.

a. Type the URL for the domain.

b. To allow access to all subdomains, select the Apply access request to subdomains check box.

c. Click OK.

3. To allow a domain to access the API functionality that your application uses, click Add Feature.

a. In the Feature Selection dialog box, select one or more features.

b. Click OK.

4. To display the rest of the configuration document, click the Overview tab.

Development Guide

8

Page 11: Blackberry Web Plug in for Eclipse Development Guide 1218770 0920045712 001 2.5 US

Using JavaScript extensions with BlackBerry WebWorks applicationsYou can use third-party JavaScript® extensions in your BlackBerry® WebWorks™ application by packaging the extensions withyour application project.

A properly packaged extension consists of a .jar file that contains the extension source and a library.xml file at its root. Thelibrary.xml file specifies the class name and the feature information.

In the permissions in the configuration document, you must specify all the features that the extension provides.

<?xml version="1.0" encoding="utf-8"?><library> <extension> <entryClass>webworkspackage.SampleExtension</entryClass> </extension> <features> <feature id="sample" version="1.0.0">My Sample JavaScript extension </feature> </features></library>

Add a JavaScript extension

Before you begin: Create a .jar file that contains the extension source and a properly formatted library.xml file at its root.

1. In Eclipse®, expand a BlackBerry® WebWorks™ application project.

2. Drag the .jar file for the extension to the ext folder in the project.

3. In the project, double-click the config.xml file.

4. Click Permissions.

5. Click Add Feature.

6. Select one or more features that the JavaScript® extension adds.

7. Click OK.

8. Save and close the config.xml file.

Signing .cod files for BlackBerry WebWorks applicationsThe BlackBerry® WebWorks™ Packager includes the BlackBerry Signature Tool so that you can install a registration key and signthe .cod file of your BlackBerry WebWorks application.

Applications that use controlled BlackBerry WebWorks APIs require signatures from the BlackBerry® Signing Authority Tool. Youmust use the BlackBerry Signature Tool to request and receive signatures.

Development Guide Using JavaScript extensions with BlackBerry WebWorks applications

9

Page 12: Blackberry Web Plug in for Eclipse Development Guide 1218770 0920045712 001 2.5 US

If you install a registration key before you install the BlackBerry WebWorks Packager, you should create an unsigned .cod file foran application and then sign the .cod file in the same way that you requested the registration key.

Obtain and install signing keys1. Visit https://www.blackberry.com/SignedKeys and complete the registration form.

After you complete the form, Research In Motion sends an email message containing a .csi file. The .csi file contains a listof signatures and your registration information.

2. In Eclipse®, on the Windows menu, click Preferences.

3. Perform one of the following actions:

Option Description

Import existing signing keys a. Click Import Existing Keys.

b. Navigate to a .csi file and click OK.

Install new signing keys a. Click Install New Keys.

b. Navigate to a .csi file and click OK.

c. When prompted, provide the PIN provided by RIM and apassword of at least eight characters.

Remove signing keys a. Click Remove Keys.

b. Navigate to a .csi file and click OK.

4. To automatically sign .cod files when you package an application, click the Automatically sign the cod files afterpackaging check box.

5. To run the Signature Tool in the background, click the Run Signature Tool in background check box.

Compiling BlackBerry WebWorks applicationsWhen you compile a BlackBerry® WebWorks™ application, all of the resources in the archive, including a start page, a configurationdocument, icons, and other resources, are used to create one or more .cod files. You can install the resulting .cod files on theBlackBerry Smartphone Simulator or on a BlackBerry device, just as you would install any other BlackBerry device application.

Specify the build parameters1. In the Package Explorer, right-click a BlackBerry® WebWorks™ project. Click Properties.

2. In the left pane, click BlackBerry WebWorks.

3. In the right pane, perform any of the following tasks:

Development Guide Compiling BlackBerry WebWorks applications

10

Page 13: Blackberry Web Plug in for Eclipse Development Guide 1218770 0920045712 001 2.5 US

Task Steps

Exclude files from the build. a. Click Add Filter.

b. Type a file extension that you want to exclude from the build.

c. Click OK.

Remove filters for the excluded files. a. Click a file extension.

b. Click Remove Filter.

Change the folder for the build output. a. Beside the Output folder field, click Browse.

b. Navigate to the new output folder and click OK.

4. Click OK.

Build and sign a BlackBerry WebWorks application1. In the Package Explorer, right-click a BlackBerry® WebWorks™ project.

2. Perform one of the following tasks:

Task Steps

Build a BlackBerry WebWorks application project. Click Build BlackBerry WebWorks Project.

Build and sign a BlackBerry WebWorks application project. a. Click Build and Sign BlackBerry WebWorks Project.

b. Type the password that you specified when you installed theregistry key.

Development Guide Compiling BlackBerry WebWorks applications

11

Page 14: Blackberry Web Plug in for Eclipse Development Guide 1218770 0920045712 001 2.5 US

Debugging BlackBerry WebWorks applications and webpages

2

Debug a BlackBerry WebWorks application or web pageIn the Project Explorer, right-click a BlackBerry® WebWorks™ application or web project and click Debug As > BlackBerrySimulator.

The BlackBerry® Smartphone Simulator opens and displays the project in the BlackBerry® Browser.

Start and stop debugging1. To start debugging, on the Run menu, click Debug.

2. To stop debugging, on the Run menu, click Terminate.

3. To pause debugging, on the Run menu, click Suspend.

4. To resume debugging, on the Run menu, click Resume.

Debugging dynamic contentDebugging web pages that are dynamically generated (for example, .jsp or .php web pages) is similar to remote debuggingprojects. The content that is generated on a dynamic web page is created in a remote debugging project and is read-only; youcannot change dynamically generated content.

Debug a remote web siteYou can debug web pages that are located on a remote website by specifying a URL when you browse to a website in theBlackBerry® Smartphone Simulator or when you define a launch configuration.

When you begin a debug session for the remote website, a new project named Remote Debugging Project is created in theworkspace and populated with the resources that the remote URL references. The structure of the website is maintained in theproject. You cannot change the files in this project; you can debug this project as you would any other project.

When you hit the first breakpoint in onLoad scripts, you must refresh the page.

1. In the Project Explorer, if a project exists, right-click a project. Click Debug As > BlackBerry Simulator.

2. In the Project Explorer, if no project exists, on the Run menu, click Debug configurations.

3. In the left pane, double-click BlackBerry Web.

4. Click the Url Configurations tab.

Development Guide Debugging BlackBerry WebWorks applications and web pages

12

Page 15: Blackberry Web Plug in for Eclipse Development Guide 1218770 0920045712 001 2.5 US

5. Type the URL of the website to open in the BlackBerry Smartphone Simulator.

6. Click Apply.

7. Click Close.

View the profiling data for project resourcesYou can view the following information about HTML code, JavaScript® code, style pages, and images:• Complete path information• Size of the resource• Load time for the resource, in milliseconds

1. In Eclipse®, on the Window menu, click Show View > Other.

2. Expand BlackBerry WebWorks.

3. Click Resources Loaded.

4. Click OK.

View HTTP request and response informationYou can view detailed information about HTTP requests and responses during web page debugging.

1. In Eclipse®, on the Window menu, click Show View > Other.

2. Expand BlackBerry WebWorks.

3. Click XmlHttpView.

4. Click OK.

5. In the XmlHttpView window, double-click an XML response item to see the corresponding XML request item.

Development Guide View the profiling data for project resources

13

Page 16: Blackberry Web Plug in for Eclipse Development Guide 1218770 0920045712 001 2.5 US

Testing BlackBerry WebWorks applications 3

Specify the BlackBerry device to simulateYou can specify any installed BlackBerry® Smartphone Simulator before you run or debug a BlackBerry® WebWorks™ applicationor web page.

InEclipse®, on the toolbar, select a BlackBerry device from the drop-down list.

Run a BlackBerry WebWorks application or web page in the BlackBerrySmartphone SimulatorYou do not need to restart the BlackBerry® Smartphone Simulator each time you make changes in your application.

Before you begin: For BlackBerry® WebWorks™ applications, compile the application successfully.

In the Package Explorer, right-click a BlackBerry WebWorks application or web project. Click Run As > BlackBerrySimulator.

Development Guide Testing BlackBerry WebWorks applications

14

Page 17: Blackberry Web Plug in for Eclipse Development Guide 1218770 0920045712 001 2.5 US

Making BlackBerry WebWorks applications available toBlackBerry device users

4

You can use any of the following distribution methods to distribute BlackBerry® WebWorks™ applications to BlackBerry deviceusers.

Distribution method Description

BlackBerry App World™

storefront

This method installs your application using BlackBerry App World on a device. You use

the .alx and .cod files that are produced by the BlackBerry® WebWorks™ Packager for this

method.

BlackBerry® Desktop Manager This method installs your application directly on a connected device using the BlackBerry

Desktop Manager. You use the .alx file that is produced by the BlackBerry WebWorks

Packager for this method.

Wireless network using the

BlackBerry® Browser

This method installs your application directly on a device over the wireless network. Users

visit a web page using the BlackBerry Browser on the device and download the application

using a link on the web page. The web server hosts the .jad and .cod files that are produced

by the BlackBerry WebWorks Packager.

BlackBerry Application Web

Loader

This method installs your application on a device from a web page. Users connect their

devices to their computers and visit the web page that contains a link to the application.

A Microsoft® ActiveX® control permits users to install the application directly from the web

page. The web server hosts the .jad and .cod files that are produced by the BlackBerry

WebWorks Packager.

Wireless push from the

BlackBerry® Enterprise Server

This method installs your application on devices over the wireless network by pushing the

application from the BlackBerry Enterprise Server to multiple devices on the network. The

server hosts the .cod and .alx files that are produced by the BlackBerry WebWorks Packager.

Development Guide Making BlackBerry WebWorks applications available to BlackBerry device users

15

Page 18: Blackberry Web Plug in for Eclipse Development Guide 1218770 0920045712 001 2.5 US

Glossary 5

AJAXAsynchronous JavaScript® and XML

APIapplication programming interface

BlackBerry Internet ServiceThe BlackBerry Internet Service is designed to provide subscribers with automatic delivery of email messages, mobile accessto email message attachments and pictures, and access to Internet content.

HTTPHypertext Transfer Protocol

HTTPSHypertext Transfer Protocol over Secure Sockets Layer

JSPJavaServer® Pages

MDSMobile Data System

MIMEMultipurpose Internet Mail Extensions

PINpersonal identification number

TCPTransmission Control Protocol

WAPWireless Application Protocol

XHTMLExtensible Hypertext Markup Language

XMLExtensible Markup Language

Development Guide Glossary

16

Page 19: Blackberry Web Plug in for Eclipse Development Guide 1218770 0920045712 001 2.5 US

Provide feedback 6

To provide feedback on this deliverable, visit www.blackberry.com/docsfeedback.

Development Guide Provide feedback

17

Page 20: Blackberry Web Plug in for Eclipse Development Guide 1218770 0920045712 001 2.5 US

Legal notice 7

©2010 Research In Motion Limited. All rights reserved. BlackBerry®, RIM®, Research In Motion®, and related trademarks, names,and logos are the property of Research In Motion Limited and are registered and/or used in the U.S. and countries around theworld.

ActiveX and Microsoft are trademarks of Microsoft Corporation. Eclipse is a trademark of Eclipse Foundation, Inc. Java, JavaScript,and JavaServer are trademarks of Oracle America, Inc. All other trademarks are the property of their respective owners.

This documentation including all documentation incorporated by reference herein such as documentation provided or madeavailable at www.blackberry.com/go/docs is provided or made accessible "AS IS" and "AS AVAILABLE" and without condition,endorsement, guarantee, representation, or warranty of any kind by Research In Motion Limited and its affiliated companies("RIM") and RIM assumes no responsibility for any typographical, technical, or other inaccuracies, errors, or omissions in thisdocumentation. In order to protect RIM proprietary and confidential information and/or trade secrets, this documentation maydescribe some aspects of RIM technology in generalized terms. RIM reserves the right to periodically change information thatis contained in this documentation; however, RIM makes no commitment to provide any such changes, updates, enhancements,or other additions to this documentation to you in a timely manner or at all.

This documentation might contain references to third-party sources of information, hardware or software, products or servicesincluding components and content such as content protected by copyright and/or third-party web sites (collectively the "ThirdParty Products and Services"). RIM does not control, and is not responsible for, any Third Party Products and Services including,without limitation the content, accuracy, copyright compliance, compatibility, performance, trustworthiness, legality, decency,links, or any other aspect of Third Party Products and Services. The inclusion of a reference to Third Party Products and Servicesin this documentation does not imply endorsement by RIM of the Third Party Products and Services or the third party in any way.

EXCEPT TO THE EXTENT SPECIFICALLY PROHIBITED BY APPLICABLE LAW IN YOUR JURISDICTION, ALL CONDITIONS,ENDORSEMENTS, GUARANTEES, REPRESENTATIONS, OR WARRANTIES OF ANY KIND, EXPRESS OR IMPLIED, INCLUDINGWITHOUT LIMITATION, ANY CONDITIONS, ENDORSEMENTS, GUARANTEES, REPRESENTATIONS OR WARRANTIES OFDURABILITY, FITNESS FOR A PARTICULAR PURPOSE OR USE, MERCHANTABILITY, MERCHANTABLE QUALITY, NON-INFRINGEMENT, SATISFACTORY QUALITY, OR TITLE, OR ARISING FROM A STATUTE OR CUSTOM OR A COURSE OF DEALINGOR USAGE OF TRADE, OR RELATED TO THE DOCUMENTATION OR ITS USE, OR PERFORMANCE OR NON-PERFORMANCEOF ANY SOFTWARE, HARDWARE, SERVICE, OR ANY THIRD PARTY PRODUCTS AND SERVICES REFERENCED HEREIN, AREHEREBY EXCLUDED. YOU MAY ALSO HAVE OTHER RIGHTS THAT VARY BY STATE OR PROVINCE. SOME JURISDICTIONSMAY NOT ALLOW THE EXCLUSION OR LIMITATION OF IMPLIED WARRANTIES AND CONDITIONS. TO THE EXTENTPERMITTED BY LAW, ANY IMPLIED WARRANTIES OR CONDITIONS RELATING TO THE DOCUMENTATION TO THE EXTENTTHEY CANNOT BE EXCLUDED AS SET OUT ABOVE, BUT CAN BE LIMITED, ARE HEREBY LIMITED TO NINETY (90) DAYS FROMTHE DATE YOU FIRST ACQUIRED THE DOCUMENTATION OR THE ITEM THAT IS THE SUBJECT OF THE CLAIM.

TO THE MAXIMUM EXTENT PERMITTED BY APPLICABLE LAW IN YOUR JURISDICTION, IN NO EVENT SHALL RIM BE LIABLEFOR ANY TYPE OF DAMAGES RELATED TO THIS DOCUMENTATION OR ITS USE, OR PERFORMANCE OR NON-PERFORMANCE OF ANY SOFTWARE, HARDWARE, SERVICE, OR ANY THIRD PARTY PRODUCTS AND SERVICES REFERENCEDHEREIN INCLUDING WITHOUT LIMITATION ANY OF THE FOLLOWING DAMAGES: DIRECT, CONSEQUENTIAL, EXEMPLARY,INCIDENTAL, INDIRECT, SPECIAL, PUNITIVE, OR AGGRAVATED DAMAGES, DAMAGES FOR LOSS OF PROFITS OR REVENUES,FAILURE TO REALIZE ANY EXPECTED SAVINGS, BUSINESS INTERRUPTION, LOSS OF BUSINESS INFORMATION, LOSS OFBUSINESS OPPORTUNITY, OR CORRUPTION OR LOSS OF DATA, FAILURES TO TRANSMIT OR RECEIVE ANY DATA, PROBLEMS

Development Guide Legal notice

18

Page 21: Blackberry Web Plug in for Eclipse Development Guide 1218770 0920045712 001 2.5 US

ASSOCIATED WITH ANY APPLICATIONS USED IN CONJUNCTION WITH RIM PRODUCTS OR SERVICES, DOWNTIME COSTS,LOSS OF THE USE OF RIM PRODUCTS OR SERVICES OR ANY PORTION THEREOF OR OF ANY AIRTIME SERVICES, COST OFSUBSTITUTE GOODS, COSTS OF COVER, FACILITIES OR SERVICES, COST OF CAPITAL, OR OTHER SIMILAR PECUNIARYLOSSES, WHETHER OR NOT SUCH DAMAGES WERE FORESEEN OR UNFORESEEN, AND EVEN IF RIM HAS BEEN ADVISEDOF THE POSSIBILITY OF SUCH DAMAGES.

TO THE MAXIMUM EXTENT PERMITTED BY APPLICABLE LAW IN YOUR JURISDICTION, RIM SHALL HAVE NO OTHEROBLIGATION, DUTY, OR LIABILITY WHATSOEVER IN CONTRACT, TORT, OR OTHERWISE TO YOU INCLUDING ANY LIABILITYFOR NEGLIGENCE OR STRICT LIABILITY.

THE LIMITATIONS, EXCLUSIONS, AND DISCLAIMERS HEREIN SHALL APPLY: (A) IRRESPECTIVE OF THE NATURE OF THECAUSE OF ACTION, DEMAND, OR ACTION BY YOU INCLUDING BUT NOT LIMITED TO BREACH OF CONTRACT, NEGLIGENCE,TORT, STRICT LIABILITY OR ANY OTHER LEGAL THEORY AND SHALL SURVIVE A FUNDAMENTAL BREACH OR BREACHESOR THE FAILURE OF THE ESSENTIAL PURPOSE OF THIS AGREEMENT OR OF ANY REMEDY CONTAINED HEREIN; AND (B)TO RIM AND ITS AFFILIATED COMPANIES, THEIR SUCCESSORS, ASSIGNS, AGENTS, SUPPLIERS (INCLUDING AIRTIMESERVICE PROVIDERS), AUTHORIZED RIM DISTRIBUTORS (ALSO INCLUDING AIRTIME SERVICE PROVIDERS) AND THEIRRESPECTIVE DIRECTORS, EMPLOYEES, AND INDEPENDENT CONTRACTORS.

IN ADDITION TO THE LIMITATIONS AND EXCLUSIONS SET OUT ABOVE, IN NO EVENT SHALL ANY DIRECTOR, EMPLOYEE,AGENT, DISTRIBUTOR, SUPPLIER, INDEPENDENT CONTRACTOR OF RIM OR ANY AFFILIATES OF RIM HAVE ANY LIABILITYARISING FROM OR RELATED TO THE DOCUMENTATION.

Prior to subscribing for, installing, or using any Third Party Products and Services, it is your responsibility to ensure that yourairtime service provider has agreed to support all of their features. Some airtime service providers might not offer Internet browsingfunctionality with a subscription to the BlackBerry® Internet Service. Check with your service provider for availability, roamingarrangements, service plans and features. Installation or use of Third Party Products and Services with RIM's products and servicesmay require one or more patent, trademark, copyright, or other licenses in order to avoid infringement or violation of third partyrights. You are solely responsible for determining whether to use Third Party Products and Services and if any third party licensesare required to do so. If required you are responsible for acquiring them. You should not install or use Third Party Products andServices until all necessary licenses have been acquired. Any Third Party Products and Services that are provided with RIM'sproducts and services are provided as a convenience to you and are provided "AS IS" with no express or implied conditions,endorsements, guarantees, representations, or warranties of any kind by RIM and RIM assumes no liability whatsoever, in relationthereto. Your use of Third Party Products and Services shall be governed by and subject to you agreeing to the terms of separatelicenses and other agreements applicable thereto with third parties, except to the extent expressly covered by a license or otheragreement with RIM.

Certain features outlined in this documentation require a minimum version of BlackBerry® Enterprise Server, BlackBerry® DesktopSoftware, and/or BlackBerry® Device Software.

The terms of use of any RIM product or service are set out in a separate license or other agreement with RIM applicable thereto.NOTHING IN THIS DOCUMENTATION IS INTENDED TO SUPERSEDE ANY EXPRESS WRITTEN AGREEMENTS OR WARRANTIESPROVIDED BY RIM FOR PORTIONS OF ANY RIM PRODUCT OR SERVICE OTHER THAN THIS DOCUMENTATION.

Research In Motion Limited295 Phillip StreetWaterloo, ON N2L 3W8Canada

Development Guide Legal notice

19

Page 22: Blackberry Web Plug in for Eclipse Development Guide 1218770 0920045712 001 2.5 US

Research In Motion UK Limited Centrum House 36 Station Road Egham, Surrey TW20 9LF United Kingdom

Published in Canada

Development Guide Legal notice

20