简体   繁体   中英

OpenText Livelink Content Server call “GetNode” does not return any document

Hi to all the community.

This question is related to a specific product called OpenText Content Server 10.5 (previously named LiveLink) and the usage of his Content Server Web Service (CWS).

We use a very simple call to retrieve a document using his DocumentID "GetNode" passing the internal Document Id:

This method works every time except when we retrieve some files like Microsoft Excel with xls or xlsx extensions.

Even a text file with "Hallo Word" in it, renamed to xls does not works!

My idea is that this could be: a) a faulty web service and a patch is needed b) we missed something in the LiveLink configuration to enable certain files.

Any help is moire than welcome

Thanks in avant for any support

---------- Part 2 -----------------

To be more specific consider that we have a document with ID= 229835 (also the Nickname has the same value)

1) With the GetNode(229835) we receive the following error: DocumentManagement.GetNode() failed on the Livelink Server. No results were returned. Check the Livelink Server thread logs. (nothing on the server logs!)

2) With the GetNodeByNickName("229835") everything works fine.

3) With te GetGUID(229835) we first retrieve a GUID like "3F67..8942" and then with GetNodeByGUID(""3F67..8942") everything works fine.

So my questions is why the first command fail and the other two works?

Consider that this a "seems" to happen with certain types of XLS, XLSX, ZIP, DOC, DOCX files. The size is no more than 2 Mb.

The GetNode call returns only the meta data for the node. You want to use GetVersionContents .

As a minimum you need to specify the ID and the versionNum for the required content. The following code is an example written in Ruby, but it should be easy to translate the logic into a different language.

  #
  # get specific +version+ of a document +id+
  # if +file_name+ is nil it returns the content of the file as base64 encoded string
  #
  def get_version(id, version, file_name=nil)
    response = @docman.request('GetVersionContents',
                               'wsdl:ID' => id,
                               'wsdl:versionNum' => version)[:contents]
    if file_name
      File.open(file_name, 'wb') do |f|
        f.write(Base64.strict_decode64(response))
      end
    else
      return Base64.strict_decode64(response)
    end
  end

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM