Skip to main content

Notice: this Wiki will be going read only early in 2024 and edits will no longer be possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.

Jump to: navigation, search

Difference between revisions of "Lyo/BuildTRS4JBugzilla"

< Lyo
m (Edit the Bugzilla configuration)
(Build the projects)
 
(10 intermediate revisions by 3 users not shown)
Line 15: Line 15:
 
== Clone the Lyo Docs, Core and Server Git repositories  ==
 
== Clone the Lyo Docs, Core and Server Git repositories  ==
  
* Follow the steps in [[Lyo/BuildOSLC4JBugzilla#Clone the Lyo Docs and Server Git repositories|OSLC-CM compatible adapter]] if you have not done yet.
+
* Open the Git Repositories view in Eclipse and click the Clone Git Repository icon
* Repeat the same repository clone instruction in the above link for the Lyo Core repository below.
+
* Use the following URIs for the location. User/Password are not required.
**<tt>git://git.eclipse.org/gitroot/lyo/org.eclipse.lyo.core.git</tt>
+
** git://git.eclipse.org/gitroot/lyo/org.eclipse.lyo.core.git
 +
** git://git.eclipse.org/gitroot/lyo/org.eclipse.lyo.server.git
 +
** git://git.eclipse.org/gitroot/lyo/org.eclipse.lyo.docs.git
 +
* On the Branch Selection page, select the following branch
 +
** If [[Lyo/TRSSDKPreview]] release needs to be used ( For example, Rational Engineering Lifecycle Manager (RELM) v1.0.0.1 or v4.0.3 releases ),
 +
*** trs-0.5 : git://git.eclipse.org/gitroot/lyo/org.eclipse.lyo.core.git
 +
*** master : git://git.eclipse.org/gitroot/lyo/org.eclipse.lyo.server.git
 +
*** trs-0.5 : git://git.eclipse.org/gitroot/lyo/org.eclipse.lyo.docs.git
 +
** If the latest release needs to be used ( For example, Rational Engineering Lifecycle Manager (RELM). v4.0.4 or later releases),
 +
*** master : git://git.eclipse.org/gitroot/lyo/org.eclipse.lyo.core.git
 +
*** master : git://git.eclipse.org/gitroot/lyo/org.eclipse.lyo.server.git
 +
*** master : git://git.eclipse.org/gitroot/lyo/org.eclipse.lyo.docs.git
 +
* On the Local Destination page, specify a location or accept the default and click Finish
  
 
== Import Eclipse projects from the Git repositories  ==
 
== Import Eclipse projects from the Git repositories  ==
Line 38: Line 50:
 
**org.eclipse.lyo.core.query  
 
**org.eclipse.lyo.core.query  
 
**org.eclipse.lyo.core.trs  
 
**org.eclipse.lyo.core.trs  
**OSLC4J
+
**org.eclipse.lyo.oslc4j.build
**OSLC4JJenaProvider
+
**org.eclipse.lyo.oslc4j.core
**OSLC4JJson4JProvider
+
**org.eclipse.lyo.oslc4j.provider.jena
**OSLC4JWink
+
**org.eclipse.lyo.oslc4j.provider.json4j
 +
**org.eclipse.lyo.oslc4j.wink
  
 
*[Optional] Add the projects to a new working set.  
 
*[Optional] Add the projects to a new working set.  
Line 55: Line 68:
 
**Change the adapter_host property to the URL of the server where this TRS provider runs. The full qualified host name is recommended.  
 
**Change the adapter_host property to the URL of the server where this TRS provider runs. The full qualified host name is recommended.  
 
**Change the admin_password to your Bugzilla Administrator's password.<br>  
 
**Change the admin_password to your Bugzilla Administrator's password.<br>  
**Change the rebuild_interval property to the interval in milliseconds. If the request to Tracked Resource Set is after "rebuild_interval" milliseconds than the precious call, all Base Resources will be rebuilt. If you aren't sure what value is appropriate, please leave it as is. If -1 is specified, Base Resource is built at the only first call.  
+
**Change the rebuild_interval property to the interval in milliseconds. If the request to Tracked Resource Set is after "rebuild_interval" milliseconds than the previous call, all Base Resources will be rebuilt. If you aren't sure what value is appropriate, please leave it as is. If -1 is specified, Base Resource is built at the only first call.  
 
**Change the max_number_of_products to the max number of Products TRS Provider will access.  
 
**Change the max_number_of_products to the max number of Products TRS Provider will access.  
 
**Change the max_number_of_bugs to the max number of Bugs TRS provider will access to generate their Change Logs.  
 
**Change the max_number_of_bugs to the max number of Bugs TRS provider will access to generate their Change Logs.  
Line 80: Line 93:
 
*In the Eclipse Package Explorer view, select all the projects you've imported, right click, and select Maven-&gt;Update Project Configuration. Click OK.  
 
*In the Eclipse Package Explorer view, select all the projects you've imported, right click, and select Maven-&gt;Update Project Configuration. Click OK.  
 
*Run Maven Install on each project in this order,  
 
*Run Maven Install on each project in this order,  
**OSLC4J
+
**org.eclipse.lyo.oslc4j.build
**OSLC4JJenaProvider
+
**OSLC4JJson4JProvider
+
**OSLC4JWink
+
 
**org.eclipse.lyo.core.trs  
 
**org.eclipse.lyo.core.trs  
 
**org.eclipse.lyo.server.oauth.core  
 
**org.eclipse.lyo.server.oauth.core  

Latest revision as of 11:24, 22 November 2013

This application is an example of Tracked Resource Set(TRS) provider for the Bugzilla application. It is built on top of OSLC-CM compatible adapter which implements OSLC Change Management provider, so it is recommended to take a look at OSLC-CM compatible adapter as well.

This application uses the OSLC4J SDK as well as TRS SDK to build up the adapter from Plain Old Java Objects and relatively simple JAX-RS web services.

Building and Running the Lyo Bugzilla Sample in Eclipse

Prerequisites

Clone the Lyo Docs, Core and Server Git repositories

Import Eclipse projects from the Git repositories

  • In the Git Repositories view, right click org.eclipse.lyo.docs and select Import Projects
  • Select the Import Existing Projects wizard and click Next
  • Import the following projects:
    • org.eclipse.lyo.oslc4j.bugzilla.trs
  • org.eclipse.lyo.oslc4j.bugzilla.trs project has Tracked Resource Set Provider for Bugzilla Workshop source code and documentation (TRS-SDK.pdf)
  • In the Git Repositories view, right click org.eclipse.lyo.server and select Import Projects
  • Select the Import Existing Projects wizard and click Next
  • Import the following projects:
    • org.eclipse.lyo.server.oauth.consumerstore
    • org.eclipse.lyo.server.oauth.core
    • org.eclipse.lyo.server.oauth.webapp
  • In the Git Repositories view, right click org.eclipse.lyo.core and select Import Projects
  • Select the Import Existing Projects wizard and click Next
  • Import the following projects:
    • org.eclipse.lyo.core.query
    • org.eclipse.lyo.core.trs
    • org.eclipse.lyo.oslc4j.build
    • org.eclipse.lyo.oslc4j.core
    • org.eclipse.lyo.oslc4j.provider.jena
    • org.eclipse.lyo.oslc4j.provider.json4j
    • org.eclipse.lyo.oslc4j.wink
  • [Optional] Add the projects to a new working set.
  • [Optional] You can download OSLC4JBugzilla project in org.eclipse.lyo.docs repository. When you will compare OSLC4JBugzilla and org.eclipse.lyo.oslc4j.bugzilla.trs projects, you will see what changes are made to implement TRS provider.

Edit the Bugzilla configuration

The sample requires Bugzilla 4.0.10 or later. Also it requires Bugzilla administrator's password, Bugzilla needs to be installed on your PC. The instruction to install Bugzilla and its prerequisite software is available at Bugzilla documentation or this wiki page at MozillaWiki. You will need to ensure that Bugzilla's XML-RPC support is working. The SOAP::Lite and Test::Taint Perl modules must be installed for XML-RPC to work.

  • Edit org.eclipse.lyo.oslc4j.bugzilla.trs/src/main/resources/bugz.properties.
    • Change the bugzilla_uri property to the URL of your Bugzilla server. The trailing slash character is necessary. The full qualified host name is recommended.
    • Change the admin property to your Bugzilla Administrator ID. This ID has authority to manage OAuth consumers.
    • Change the adapter_host property to the URL of the server where this TRS provider runs. The full qualified host name is recommended.
    • Change the admin_password to your Bugzilla Administrator's password.
    • Change the rebuild_interval property to the interval in milliseconds. If the request to Tracked Resource Set is after "rebuild_interval" milliseconds than the previous call, all Base Resources will be rebuilt. If you aren't sure what value is appropriate, please leave it as is. If -1 is specified, Base Resource is built at the only first call.
    • Change the max_number_of_products to the max number of Products TRS Provider will access.
    • Change the max_number_of_bugs to the max number of Bugs TRS provider will access to generate their Change Logs.
    • Change the start_date_year, start_date_month and start_date_day to the date. TRS Provider will access Bugs which were modified after this specified date. The time zone of this date is same as your PC setting.

Note that you can create a test Bugzilla installation at landfill  ( the direct link to create a test Bugzilla installation is this. ) If you will use this test Bugzilla installation, please make sure that :

  • Use the smaller values to "max_number_of_products" and "the max_number_of_bugs" properties in org.eclipse.lyo.oslc4j.bugzilla.trs/src/main/resources/bugz.properties. For example,
    • max_number_of_products=1
    • max_number_of_bugs=3

This is because this test Bugzilla installation has many Bugs already, using their default values could cause the very slow performance.

  • Disable Bugzilla SSL redirect otpion by the following steps
    • Login Bugzilla as an asministrator ID
    • Click "Administration" link
    • Click "Parameters" link
    • Click "off" radio button of "ssl_redirect"
  • Use "http" protocol for bugzilla_uri property in org.eclipse.lyo.oslc4j.bugzilla.trs/src/main/resources/bugz.properties even if the given URL for the created test Bugzilla installation uses "https". For example,

Build the projects

  • In the Eclipse Package Explorer view, select all the projects you've imported, right click, and select Maven->Update Project Configuration. Click OK.
  • Run Maven Install on each project in this order,
    • org.eclipse.lyo.oslc4j.build
    • org.eclipse.lyo.core.trs
    • org.eclipse.lyo.server.oauth.core
    • org.eclipse.lyo.server.oauth.consumerstore
    • org.eclipse.lyo.server.oauth.webapp
    • org.eclipse.lyo.oslc4j.bugzilla.trs
  • To run Maven Install,
    • Expand the project
    • Right click pom.xml and select Run As->Maven install.
  • IBM JVM/JRE Users: There is an issue with m2eclipse and the IBM JRE. If you have see the error java.lang.NoClassDefFoundError: org.slf4j.impl.StaticLoggerBinder when running a Maven install, you need to copy a newer slf4j api jar into your JRE directory to work around the issue until it is fixed:
  • You may need to check README.txt for instructions on how to install the missing j2bugzilla dependency in case the Maven install fails for this project.

Run the TRS Adapter for Bugzilla web application

  • Make sure that Internet is accessible.
  • Start Bugzilla
  • Select Run->Run Configurations and double click Maven Build
  • Select the Launch TRS Reference App for Bugzilla launch and click Run

TRS4JBugzillaLaunchpng.png

You should now be able to point a local web browser at http://localhost:8085/OSLC4JBugzilla/services/trs/base to make sure that TRS Adapter for Bugzilla is working.

Back to the top