Jazz Forum Welcome to the Jazz Community Forum Connect and collaborate with IBM Engineering experts and users

HTTP Filtered Value Set "The reference to entity "etag" must end with the ';' delimiter" problem

 Hi Folks, I am running RTC 4.0.1 I have configured an HTTP Value Set customisation to retrieve values from an XML file that I have stored in RTC source Control. I get the following error message in the presentation when I try to retrieve the list:

"The reference to entity "etag" must end with the ';' delimiter" 

The HTTP filtered Value set  is configured as follows:

  • XML Data Source URL: URL point to the XML file in source control
  • Row Xpath expression: //xml/node NB I use the same XML file outlined in RTC Scripting Using XML
  • Column XPath expressions: ./make
  • Column Identifier: Make
  • Entry Label Format: ${0}
  • Checkbox 'Apply filter strings to values received from data source ' is set
  • Checkbox 'Sort Values received from data source' is set
  • Authentication Method: No authentication required
  • Checkbox 'Ignore invalid SSL certificates is set
Is using the RTC Source Control to store the XML file a valid use case? There seems to be conflicting opinions on this. Does the 'etag' error relate to a problem with the XML file or is it a permissions problem.

If anybody can help on this I would be most grateful.

Kind Regards

Russell



0 votes



7 answers

Permanent link

Have things changed or lucky me that I got pointed to the right direction: Was about to bring in Firefox and Firebug via special permission (IE8 is our standard, anything else is taboo here, can't download or install anything) to go the tortuous road you led, but there is a much simpler way to pick up that URL, maybe IBM's shortcoming here is just in not publishing decent instructions for it.

  • Browse your xml file via the WebUI/Source Control
  • Once your xml file (stored in RTC SCM) is displayed
  • Right click the Download icon, second from left to right (don't lock and download with the first button) on the top RIGHT row of icons.
  • Pick "Copy Shortcut" from the popup context menu
  • And voilà, you got your URL, which is just longer than required (and will break the HTTP fetch).
  • Something similar to, for an xml file named CarExample.xml: 
https://<serverAddess>:9443/ccm/service/com.ibm.team.filesystem.service.internal.rest.IFilesystemContentService/_Seg4kQxBEeOicfZYgLaBRQ/_A8NY0BG6EeOicfZYgLaBRQ/CarExample.xml?itemId=_Le-20Bs4EeO0jISnCYVhtQ&stateId=_ Uz4JpBs4EeOicfZYgLaBRQ& platformLineDelimiter=CRLF
  • Its tail has to be cut off from &stateId= to be usable as:
https://<serverAddess>:9443/ccm/service/com.ibm.team.filesystem.service.internal.rest.IFilesystemContentService/_Seg4kQxBEeOicfZYgLaBRQ/_A8NY0BG6EeOicfZYgLaBRQ/CarExample.xml?itemId=_Le-20Bs4EeO0jISnCYVhtQ

1 vote

Comments

Hi Long, thanks for sharing this. I think this is a much simpler way of doing things.

Cool! Do you mind if I test that and blog about it? I will share the originator, of course.

Ralph: have you got my 2 emails in response to the notification of your comment ?

Ralph: Essentially, I am not the originator, nor do I know who that genius is.

Just trying to transfer the set of XML files to another RTC PA: Phew! Kept misstepping, thought things have changed since I last tried this, the URL looked so regular. 


Permanent link
Hello Russel,
well - I have used XML files uploaded to jazz SCM to test HTTP Value Set Providers.
However - I consider this as a hack - because you need to get the right URL to fetch XML content from SCM.

I would encourage you to use HTTP server - I use cattail for testing - you may use WAS.

To test with jazz SCM:
1 - upload your file
2 - Use Firefox and Firebug - go to SCM WebUI and navigate you your file
3 - open Firebug, Net tab
4 - click on edit
5 - check the URL that was used in Firebug and copy/paste if to your RTC Client


Please note that each time you will change the XML content in jazz SCM, the URL will have to be changed to reflect changes :-(

0 votes

Comments

Hi Eric, thanks for your reply. I followed the instructions but am still getting the same problem. The new URL is:



Is there anything else I need to configure to make this work?

 

Hello Russel,
well - don't forget the oAuth authentication part:
FORM auth - default
URL: https://<server:port>/ccm/authenticated/j_security_check
user name: j_username
user password: j_password
cred identifier: rtcserver
user name and pwd : you user name and pwd

This should solve your issue.
Thanks

 Hi Eric, I have added the values above and I am now getting the error message "HTTP connector could not authenticate, HTTP server returned code 406 Not Acceptable". 


Not sure if this is to do with the format of the XML which looks like:

<xml>
<node>
<id>1</id>
<make>Acura</make>
<regions>,1,2,</regions>
 </node>
 <node>
<id>2</id>
<make>Aixam</make>
<regions>,2,</regions>
 </node>
</xml>

Hello Russel,
this looks like an authentication error.
Double check URL and params
URL: https://clm.demo.com:9443/ccm/authenticated/j_security_check
user name: j_username
user password: j_password
cred identifier: rtcserver
user name and pwd : <you user name and pwd >

in bold are the static values ...


Permanent link
I  rechecked the values and they look OK. Extract from log file follows:

[HttpFilteredValueSetProvider]Retrieving values from HttpConnector...
[HttpConnector]Ignoring invalid SSL certificates
[HttpConnector]Using form based authentication
[HttpConnector]Retrieving session cookie...
[HttpConnector]Issue a new HTTP requestGET /ccm/resource/virtualPath/com.ibm.team.scm.rest2.dto.VersionablePlusDTO/workspaceId/_UHTK0IpZEeKnOZ6OA-6WZg/componentId/_UNzbcYpZEeKnOZ6OA-6WZg/id/itemOid%252Fcom.ibm.team.filesystem.FileItem%252F_cFewEIpeEeKnOZ6OA-6WZg/
Host: clm.demo.com:9443
Connection: Keep-Alive
[HttpConnector]Got response 'Moved Temporarily'302 Moved Temporarily
Server: Apache-Coyote/1.1
Cache-Control: private
Expires: Thu, 01 Jan 1970 01:00:00 GMT
Set-Cookie: ***
X-com-ibm-team-repository-web-auth-msg: authrequired
Location: https://clm.demo.com:9443/ccm/authenticated/identity?redirectPath=%2Fccm%2Fresource%2FvirtualPath%2Fcom.ibm.team.scm.rest2.dto.VersionablePlusDTO%2FworkspaceId%2F_UHTK0IpZEeKnOZ6OA-6WZg%2FcomponentId%2F_UNzbcYpZEeKnOZ6OA-6WZg%2Fid%2FitemOid%25252Fcom.ibm.team.filesystem.FileItem%25252F_cFewEIpeEeKnOZ6OA-6WZg%2F
Content-Length: 0
Date: Tue, 12 Mar 2013 16:52:06 GMT
[HttpConnector]Issue a new HTTP requestGET /ccm/authenticated/identity?redirectPath=%2Fccm%2Fresource%2FvirtualPath%2Fcom.ibm.team.scm.rest2.dto.VersionablePlusDTO%2FworkspaceId%2F_UHTK0IpZEeKnOZ6OA-6WZg%2FcomponentId%2F_UNzbcYpZEeKnOZ6OA-6WZg%2Fid%2FitemOid%25252Fcom.ibm.team.filesystem.FileItem%25252F_cFewEIpeEeKnOZ6OA-6WZg%2F
Host: clm.demo.com:9443
Connection: Keep-Alive
Cookie: ***
Cookie2: $Version=1
[HttpConnector]Got response 'OK'200 OK
Server: Apache-Coyote/1.1
Cache-Control: private
Expires: Thu, 01 Jan 1970 01:00:00 GMT
Set-Cookie: ***
X-com-ibm-team-repository-web-auth-msg: authrequired
Content-Type: text/html;charset=UTF-8
Content-Length: 2720
Date: Tue, 12 Mar 2013 16:52:06 GMT
[HttpConnector]Login...
[HttpConnector]Issue a new HTTP requestGET /ccm/authenticated/j_security_check?j_username=russelln&j_password=***
Accept: application/xml
Host: clm.demo.com:9443
Connection: Keep-Alive
Cookie: ***
Cookie2: $Version=1
[HttpConnector]Got response 'Moved Temporarily'302 Moved Temporarily
Server: Apache-Coyote/1.1
Location: https://clm.demo.com:9443/ccm/authenticated/identity?redirectPath=%2Fccm%2Fresource%2FvirtualPath%2Fcom.ibm.team.scm.rest2.dto.VersionablePlusDTO%2FworkspaceId%2F_UHTK0IpZEeKnOZ6OA-6WZg%2FcomponentId%2F_UNzbcYpZEeKnOZ6OA-6WZg%2Fid%2FitemOid%25252Fcom.ibm.team.filesystem.FileItem%25252F_cFewEIpeEeKnOZ6OA-6WZg%2F
Content-Length: 0
Date: Tue, 12 Mar 2013 16:52:06 GMT
[HttpConnector]Issue a new HTTP requestGET /ccm/authenticated/identity?redirectPath=%2Fccm%2Fresource%2FvirtualPath%2Fcom.ibm.team.scm.rest2.dto.VersionablePlusDTO%2FworkspaceId%2F_UHTK0IpZEeKnOZ6OA-6WZg%2FcomponentId%2F_UNzbcYpZEeKnOZ6OA-6WZg%2Fid%2FitemOid%25252Fcom.ibm.team.filesystem.FileItem%25252F_cFewEIpeEeKnOZ6OA-6WZg%2F
Accept: application/xml
Host: clm.demo.com:9443
Connection: Keep-Alive
Cookie: ***
Cookie2: $Version=1
[HttpConnector]Got response 'Moved Temporarily'302 Moved Temporarily
Server: Apache-Coyote/1.1
Cache-Control: private
Expires: Thu, 01 Jan 1970 01:00:00 GMT
Set-Cookie: ***
Set-Cookie: ***
Set-Cookie: ***
Location: https://clm.demo.com:9443/ccm/resource/virtualPath/com.ibm.team.scm.rest2.dto.VersionablePlusDTO/workspaceId/_UHTK0IpZEeKnOZ6OA-6WZg/componentId/_UNzbcYpZEeKnOZ6OA-6WZg/id/itemOid%252Fcom.ibm.team.filesystem.FileItem%252F_cFewEIpeEeKnOZ6OA-6WZg/
Content-Length: 0
Date: Tue, 12 Mar 2013 16:52:06 GMT
[HttpConnector]Issue a new HTTP requestGET /ccm/resource/virtualPath/com.ibm.team.scm.rest2.dto.VersionablePlusDTO/workspaceId/_UHTK0IpZEeKnOZ6OA-6WZg/componentId/_UNzbcYpZEeKnOZ6OA-6WZg/id/itemOid%252Fcom.ibm.team.filesystem.FileItem%252F_cFewEIpeEeKnOZ6OA-6WZg/
Accept: application/xml
Host: clm.demo.com:9443
Connection: Keep-Alive
Cookie: ***
Cookie2: $Version=1
[HttpConnector]Got response 'Not Acceptable'406 Not Acceptable
Server: Apache-Coyote/1.1
Content-Type: text/plain;charset=UTF-8
Transfer-Encoding: chunked
Date: Tue, 12 Mar 2013 16:52:06 GMT
[HttpConnector]Could not authenticate
[HttpConnector]Could not retrieve XML document

0 votes

Comments

so this is not the correct URL (to the SCM shared XML)


Permanent link
The easiest way I found is to use Apache. you basically have to know into whch folder to drop stuff or how to change the folder. See Build Artifacts Publishing Using HTTP Servers in Rational Team Concert for more details.

0 votes


Permanent link
Russell, what happens when you enter the SCM URL you are using in a browser?  You should be prompted to open or save a file.  I believe the SCM URL should follow the format below.  This URL should be in firebug (console tab) once you navigate to the file content as Eric explained.
https://<host>:9443/ccm/service/com.ibm.team.filesystem.common.IFileContentService/content/_r_07wItBEeK7HPN3M9ETow/_gTyV9ItCEeK7HPN3M9ETow

0 votes


Permanent link
 Hi Folks, thanks for all your help.

Eric\Brian, I did copy the wrong URL. Once corrected it worked perfectly.

I think this is really useful feature that I will definitely use going forward. However, for production purposes I will use one of the mechanisms described by Eric and Ralph.

Eric thanks once again for your help (and patience) it is very much appreciated.

Kind Regards

Russell

0 votes

Comments

Hello Russell,
glad you're up and running now - glad we could help.

Thanks.
Eric.

Russel, since the first answer, I posted: http://rsjazz.wordpress.com/2013/07/29/publish-and-host-xml-data-using-tomcat-the-easy-way/ and http://rsjazz.wordpress.com/2013/07/23/publish-xml-data-using-tomcat-hotfix-for-the-process-enactment-workshop/ I think with the option of using Jazz SCM, that should pretty much cover most of the scenarios.


Permanent link
I've submitted Update Configuring an HTTP filtered value set provider help topic based on Jazz Forum post (282602) to update the help topic with instructions for finding the URL of an XML document stored in RTC source control.

0 votes

Your answer

Register or log in to post your answer.

Dashboards and work items are no longer publicly available, so some links may be invalid. We now provide similar information through other means. Learn more here.

Search context
Follow this question

By Email: 

Once you sign in you will be able to subscribe for any updates here.

By RSS:

Answers
Answers and Comments
Question details
× 6,132
× 115

Question asked: Mar 12 '13, 5:34 a.m.

Question was seen: 11,239 times

Last updated: Mar 10 '14, 8:19 p.m.

Confirmation Cancel Confirm