You are not logged in. Click here to log in.

codebeamer Application Lifecycle Management (ALM)

Search In Project

Search inClear

Tags:  not added yet

How to Customize the Remote Issue Reporting

Codebeamer contains a remote-issue-reporting feature that can be used by customers to report issues with their Codebeamer installations directly back to Codebeamer team.

This appears on all Codebeamer pages in the footer like this, and by clicking on this link this opens a wizard to report issues to Codebeamer.

Why Customize?

This requirement has arisen from a customer of Codebeamer: that they wanted to customize this link's text and behaviour, as they described:

As an system operator of codeBeamer installation, I want to configure the link (target url), which is called by clicking on " Incident / Feature Request / Question " inside of the footer of the codeBeamer application.
Optional: If easy possible to extend, we also want to change the displayed link-text to be able to change " Incident / Feature Request / Question " to something like "Need support / help for application ?"


How to Customize?

To customize this link a System administrator should go to the Application Configuration and adjust the following settings there: this is just an example please adapt to your needs!

Edit Installation section and add following options:

  ...
  "installation" : {
    "remoteIssueReport" : {
      "footerLabel" : "New Report Bug!",
      "footerTooltip" : "This opens a customized remote issue reporting page!",
      "url" : "http://127.0.0.1:8080/cb/customRemoteIssueReporting.jsp",
      "showInFooter" : true
    }
  } ...


By adding the remoteIssueReport block here the System administrator can adjust:

  • footerLabel: this is the text or message-code for the message that appears in the footer instead of the standard label. If you want to translate/internationalize this text then put the message code here, and the translated message to the my-ApplicationResources.properties files as described here: Codebeamer Localization Guide
  • footerTooltip: this is the text or message-code which appears in the tooltip when the mouse hovers over this link. You can use message-code here too just like in footerLabel
  • url: optional url where the page will be sent-to if this link is clicked. In this example this is a JSP page which contains the customized page that will appear instead of the standard report-issue-wizard page.
  • showInFooter: optional boolean attribute: by setting this to false you can remove this link from the footer completely. The link that points to the Knowledge Base will be shown always.

Example

The following is just an example of customization: your exact situation may need other landing page for this url!

Let's assume that you want a custom JSP page to be displayed when the link is clicked. In our example I will add a new JSP page that appears or the link.

So create a new file: a JSP page into your $CB_HOME/tomcat/webapps/cb/web/customRemoteIssueReporting.jsp with this content below:

<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn" %>

<meta name="decorator" content="popup"/>
<meta name="module" content="tracker"/>
<meta name="moduleCSSClass" content="trackersModule newskin ${importForm.tracker.isBranch() ? 'tracker-branch' : ''}" />

<body>

<div style="padding:10px;">
<h3>Hello this is a custom remote issue reporting JSP page !</h3>

<p>
Parameters:
</p>

<pre>
<c:forEach var="par" items="${paramValues}"><c:out value="${par.key}"/> = <c:out value="${par.value[0]}"/>
</c:forEach>
</pre>

<!-- reconstruct the url to send the data to cb.com by passing all parameters of this page
     the "defaultUrl" contains the cb.com url to send the report to
-->
<c:if test="${! empty param.defaultUrl}">
    <c:set var="paramsToSend" value=""/>
    <c:forEach var="par" items="${paramValues}">
        <c:if test="${par.key != 'defaultUrl'}">
            <c:set var="paramsToSend" value="${paramsToSend}${par.key}=${par.value[0]}&"/>
        </c:if>
    </c:forEach>
    <a href="${param.defaultUrl}?${paramsToSend}">Send report to codebeamer.com</a>
</c:if>
</div>

</body>


What this page does is that it will show a simple page on click which prints out all the PARAMETERS passed to the remote-issue-reporting JSP page. These parameters are:

parameter meaning
data This contains the binary technical data about your Codebeamer installation like its version number, memory status, operation system and few similar
interceptAttribute = remoteIssueTargetUrl Should be passed to Codebeamer without any modifications
defaultUrl = https://codebeamer.com/cb/remote/issue/create.spr The remote url on codebeamer.com where normally the issues reported to

Also this example JSP page adds a simple HTML link which opens the standard issue reporting url.

This shows you an example how to intercept the flow of the remote-issue-reporting, but continue this flow if you want to the standard remote-issue-reporting flow.