Filename encoding on content server

Hi experts,
In DMS we are using file system repository from the SAP Content Content installed on HP-UX. When we save files with the russian filename all symbols in the saved file are encoded with % + hexadecimal representation. So we can save files only with the short names. When we try to save file with the long filename its encoded name exceed 256 symbols limit and system give us an error.
I appreciate any suggestion or any workaround.
Best Regards
Pavel

The official answer from SAP:
Content Server operates on Non unicode mode which means it cannot store
the files or documents with special characters(russian here ),Hence KPROLayer before it sends the document for Storage to the Content Server it
converts the russian file name to binary format.
During the Conversion each special(russian) is mapped to particular
format, hence after conversion the file name would be large,Since it is
a File System Repository,the operating system wont allow to create the
files larger than 255 characters.
Hence this is a limitation from Operating system, the files exceed 255
characters, it is not supported.
Even if the Content Server is based on MaxDB, the length of the
converted result is same and MaxDB also has the maximum filename
restriction of 254 characters.
If the ECC system is unicode,the length of the converted result will be
short than now (this is the behaviour in our internal system which is
unicode).This should resolve the issue, but we are not completely sure
of this.
However if you use R3 System Database, there will be no issue as
conversion does not happen there.
But with MaxDB it works.

Similar Messages

  • Filename encoding from content server

    Dear gurus,
    I need your help. As storage our documents for ERP we use content server. I observe problem for example I try to open in sbwp in shared folders file with name "Роли-транзакции MM.xls". On first time it  opens without any problem. Then I try open this file or other I see message "file is not found <name of file>". When i go in sapworkdir (or sapgui) folder I see file with filename like  this "####-##########MM_20130919063339.006_X.xls". But the files with English letters in the file name opens correct. I understand that the problem is somewhere in the content server, but where?

    Hi Dmitry,
    Do you do all the activities with logon language RU and a Windows front end system where the system code page is based on Cyrillic? If not, please retry with a "completely localized" setup.
    The fact that the Russian characters are converted to #-symbols indicate that somewhere there is a conversion from Unicode --> Non-Unicode (probably Latin-1 - maybe based on logon language) and this fails.
    Unfortunately I am not familiar with content server - and these kind of problems are difficult to be analyzed without direct debugging on the system. Therefore I think it is the best if you raise a customer message  at SAP.
    Or maybe there is someone who knows content server very well and might be able to help ...
    Best regards,
    Nils

  • FileName from the Content Server

    Hi All ,
    I need to show the FileName of a File uploaded into SAP Content Server .
    Example if I upload fiel ABC.pdf I should be able to get the name "ABC.pdf" form content server
    is there any FM available ?
    Note : While storing the file into content server it is creating the unique ID(system generated GUID) for each uploaded File.
               Using this ID I am able to show the contents of file using FileDownload but the label I need to show as the FileName and
              not the ID.
    Regards,
    Ravi

    I am having this problem as well, with IE5.0 as well as IE5.5 on Windows 2000. I have tried the above suggestion and that doesnt seem to work. I have also tried to use a
    Content-Disposition of "inline" to just view
    the document and that seems to work incorrectly too; an IE dialog comes up
    asking to open/save the download JSP.
    I have tried loads of variations and based
    my code on Marks stuff posted in this group
    e.g. renderContent.
    Any more suggestions/work arounds?
    Darren.
    null

  • SAP Content Server error

    Hello colleagues,
    I have this error when start the Content Server,
    host:(/directory/apache/bin)(root)#./apachectl start
    httpd: Syntax error on line 66 of /directory/apache/conf/httpd.conf: Cannot load modules/mod_sapcs22.so into
    server: /directory/apache/modules/mod_sapcs22.so: undefined symbol: ap_log_error
    Can you help me?
    Thanks

    Hi Reagan,
    Execute the first parameter,
    rgqaserp:(/sapcontreps/apache/modules)(root)#cat /sapcontreps/apache/conf/httpd.conf
    # This is the main Apache HTTP server configuration file.  It contains the
    # configuration directives that give the server its instructions.
    # See <URL:http://httpd.apache.org/docs/2.4/> for detailed information.
    # In particular, see
    # <URL:http://httpd.apache.org/docs/2.4/mod/directives.html>
    # for a discussion of each configuration directive.
    # Do NOT simply read the instructions in here without understanding
    # what they do.  They're here only as hints or reminders.  If you are unsure
    # consult the online docs. You have been warned.
    # Configuration and logfile names: If the filenames you specify for many
    # of the server's control files begin with "/" (or "drive:/" for Win32), the
    # server will use that explicit path.  If the filenames do *not* begin
    # with "/", the value of ServerRoot is prepended -- so "logs/access_log"
    # with ServerRoot set to "/usr/local/apache2" will be interpreted by the
    # server as "/usr/local/apache2/logs/access_log", whereas "/logs/access_log"
    # will be interpreted as '/logs/access_log'.
    # ServerRoot: The top of the directory tree under which the server's
    # configuration, error, and log files are kept.
    # Do not add a slash at the end of the directory path.  If you point
    # ServerRoot at a non-local disk, be sure to specify a local disk on the
    # Mutex directive, if file-based mutexes are used.  If you wish to share the
    # same ServerRoot for multiple httpd daemons, you will need to change at
    # least PidFile.
    ServerRoot "/sapcontreps/apache"
    # Mutex: Allows you to set the mutex mechanism and mutex file directory
    # for individual mutexes, or change the global defaults
    # Uncomment and change the directory if mutexes are file-based and the default
    # mutex file directory is not on a local disk or is not appropriate for some
    # other reason.
    # Mutex default:logs
    # Listen: Allows you to bind Apache to specific IP addresses and/or
    # ports, instead of the default. See also the <VirtualHost>
    # directive.
    # Change this to Listen on specific IP addresses as shown below to
    # prevent Apache from glomming onto all bound IP addresses.
    #Listen 12.34.56.78:80
    Listen 1090
    # Dynamic Shared Object (DSO) Support
    # To be able to use the functionality of a module which was built as a DSO you
    # have to place corresponding `LoadModule' lines at this location so the
    # directives contained in it are actually available _before_ they are used.
    # Statically compiled modules (those listed by `httpd -l') do not need
    # to be loaded here.
    # Example:
    # LoadModule foo_module modules/mod_foo.so
    LoadModule sapcs_module modules/mod_sapcs22.so
    LoadModule authn_file_module modules/mod_authn_file.so
    #LoadModule authn_dbm_module modules/mod_authn_dbm.so
    #LoadModule authn_anon_module modules/mod_authn_anon.so
    #LoadModule authn_dbd_module modules/mod_authn_dbd.so
    #LoadModule authn_socache_module modules/mod_authn_socache.so
    LoadModule authn_core_module modules/mod_authn_core.so
    LoadModule authz_host_module modules/mod_authz_host.so
    LoadModule authz_groupfile_module modules/mod_authz_groupfile.so
    LoadModule authz_user_module modules/mod_authz_user.so
    #LoadModule authz_dbm_module modules/mod_authz_dbm.so
    #LoadModule authz_owner_module modules/mod_authz_owner.so
    #LoadModule authz_dbd_module modules/mod_authz_dbd.so
    LoadModule authz_core_module modules/mod_authz_core.so
    LoadModule access_compat_module modules/mod_access_compat.so
    LoadModule auth_basic_module modules/mod_auth_basic.so
    #LoadModule auth_form_module modules/mod_auth_form.so
    #LoadModule auth_digest_module modules/mod_auth_digest.so
    #LoadModule allowmethods_module modules/mod_allowmethods.so
    #LoadModule file_cache_module modules/mod_file_cache.so
    #LoadModule cache_module modules/mod_cache.so
    #LoadModule cache_disk_module modules/mod_cache_disk.so
    #LoadModule cache_socache_module modules/mod_cache_socache.so
    #LoadModule socache_shmcb_module modules/mod_socache_shmcb.so
    #LoadModule socache_dbm_module modules/mod_socache_dbm.so
    #LoadModule socache_memcache_module modules/mod_socache_memcache.so
    #LoadModule macro_module modules/mod_macro.so
    #LoadModule dbd_module modules/mod_dbd.so
    #LoadModule dumpio_module modules/mod_dumpio.so
    #LoadModule buffer_module modules/mod_buffer.so
    #LoadModule ratelimit_module modules/mod_ratelimit.so
    LoadModule reqtimeout_module modules/mod_reqtimeout.so
    #LoadModule ext_filter_module modules/mod_ext_filter.so
    #LoadModule request_module modules/mod_request.so
    #LoadModule include_module modules/mod_include.so
    LoadModule filter_module modules/mod_filter.so
    #LoadModule substitute_module modules/mod_substitute.so
    #LoadModule sed_module modules/mod_sed.so
    LoadModule mime_module modules/mod_mime.so
    LoadModule log_config_module modules/mod_log_config.so
    #LoadModule log_debug_module modules/mod_log_debug.so
    #LoadModule logio_module modules/mod_logio.so
    LoadModule env_module modules/mod_env.so
    #LoadModule expires_module modules/mod_expires.so
    LoadModule headers_module modules/mod_headers.so
    #LoadModule unique_id_module modules/mod_unique_id.so
    LoadModule setenvif_module modules/mod_setenvif.so
    LoadModule version_module modules/mod_version.so
    #LoadModule remoteip_module modules/mod_remoteip.so
    #LoadModule proxy_module modules/mod_proxy.so
    #LoadModule proxy_connect_module modules/mod_proxy_connect.so
    #LoadModule proxy_ftp_module modules/mod_proxy_ftp.so
    #LoadModule proxy_http_module modules/mod_proxy_http.so
    #LoadModule proxy_fcgi_module modules/mod_proxy_fcgi.so
    #LoadModule proxy_scgi_module modules/mod_proxy_scgi.so
    #LoadModule proxy_wstunnel_module modules/mod_proxy_wstunnel.so
    #LoadModule proxy_ajp_module modules/mod_proxy_ajp.so
    #LoadModule proxy_balancer_module modules/mod_proxy_balancer.so
    #LoadModule proxy_express_module modules/mod_proxy_express.so
    #LoadModule session_module modules/mod_session.so
    #LoadModule session_cookie_module modules/mod_session_cookie.so
    #LoadModule session_dbd_module modules/mod_session_dbd.so
    #LoadModule slotmem_shm_module modules/mod_slotmem_shm.so
    #LoadModule lbmethod_byrequests_module modules/mod_lbmethod_byrequests.so
    #LoadModule lbmethod_bytraffic_module modules/mod_lbmethod_bytraffic.so
    #LoadModule lbmethod_bybusyness_module modules/mod_lbmethod_bybusyness.so
    #LoadModule lbmethod_heartbeat_module modules/mod_lbmethod_heartbeat.so
    LoadModule unixd_module modules/mod_unixd.so
    #LoadModule dav_module modules/mod_dav.so
    LoadModule status_module modules/mod_status.so
    LoadModule autoindex_module modules/mod_autoindex.so
    #LoadModule info_module modules/mod_info.so
    #LoadModule cgid_module modules/mod_cgid.so
    #LoadModule dav_fs_module modules/mod_dav_fs.so
    #LoadModule vhost_alias_module modules/mod_vhost_alias.so
    #LoadModule negotiation_module modules/mod_negotiation.so
    LoadModule dir_module modules/mod_dir.so
    #LoadModule actions_module modules/mod_actions.so
    #LoadModule speling_module modules/mod_speling.so
    #LoadModule userdir_module modules/mod_userdir.so
    LoadModule alias_module modules/mod_alias.so
    #LoadModule rewrite_module modules/mod_rewrite.so
    <IfModule unixd_module>
    # If you wish httpd to run as a different user or group, you must run
    # httpd as root initially and it will switch.
    # User/Group: The name (or #number) of the user/group to run httpd as.
    # It is usually good practice to create a dedicated user and group for
    # running httpd, as with most system services.
    User daemon
    Group daemon
    </IfModule>
    # 'Main' server configuration
    # The directives in this section set up the values used by the 'main'
    # server, which responds to any requests that aren't handled by a
    # <VirtualHost> definition.  These values also provide defaults for
    # any <VirtualHost> containers you may define later in the file.
    # All of these directives may appear inside <VirtualHost> containers,
    # in which case these default settings will be overridden for the
    # virtual host being defined.
    # ServerAdmin: Your address, where problems with the server should be
    # e-mailed.  This address appears on some server-generated pages, such
    # as error documents.  e.g. [email protected]
    ServerAdmin [email protected]
    # ServerName gives the name and port that the server uses to identify itself.
    # This can often be determined automatically, but we recommend you specify
    # it explicitly to prevent problems during startup.
    # If your host doesn't have a registered DNS name, enter its IP address here.
    #ServerName www.example.com:80
    # Deny access to the entirety of your server's filesystem. You must
    # explicitly permit access to web content directories in other
    # <Directory> blocks below.
    <Directory />
        AllowOverride none
        Require all denied
    </Directory>
    # Note that from this point forward you must specifically allow
    # particular features to be enabled - so if something's not working as
    # you might expect, make sure that you have specifically enabled it
    # below.
    # DocumentRoot: The directory out of which you will serve your
    # documents. By default, all requests are taken from this directory, but
    # symbolic links and aliases may be used to point to other locations.
    DocumentRoot "/sapcontreps/apache/htdocs"
    <Directory "/sapcontreps/apache/htdocs">
        # Possible values for the Options directive are "None", "All",
        # or any combination of:
        #   Indexes Includes FollowSymLinks SymLinksifOwnerMatch ExecCGI MultiViews
        # Note that "MultiViews" must be named *explicitly* --- "Options All"
        # doesn't give it to you.
        # The Options directive is both complicated and important.  Please see
        # http://httpd.apache.org/docs/2.4/mod/core.html#options
        # for more information.
        Options Indexes FollowSymLinks
        # AllowOverride controls what directives may be placed in .htaccess files.
        # It can be "All", "None", or any combination of the keywords:
        #   AllowOverride FileInfo AuthConfig Limit
        AllowOverride None
        # Controls who can get stuff from this server.
        Require all granted
    </Directory>
    # DirectoryIndex: sets the file that Apache will serve if a directory
    # is requested.
    <IfModule dir_module>
        DirectoryIndex index.html
    </IfModule>
    # The following lines prevent .htaccess and .htpasswd files from being
    # viewed by Web clients.
    <Files ".ht*">
        Require all denied
    </Files>
    # ErrorLog: The location of the error log file.
    # If you do not specify an ErrorLog directive within a <VirtualHost>
    # container, error messages relating to that virtual host will be
    # logged here.  If you *do* define an error logfile for a <VirtualHost>
    # container, that host's errors will be logged there and not here.
    ErrorLog "logs/error_log"
    # LogLevel: Control the number of messages logged to the error_log.
    # Possible values include: debug, info, notice, warn, error, crit,
    # alert, emerg.
    LogLevel warn
    <IfModule log_config_module>
        # The following directives define some format nicknames for use with
        # a CustomLog directive (see below).
        LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined
        LogFormat "%h %l %u %t \"%r\" %>s %b" common
        <IfModule logio_module>
          # You need to enable mod_logio.c to use %I and %O
          LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\" %I %O" combinedio
        </IfModule>
        # The location and format of the access logfile (Common Logfile Format).
        # If you do not define any access logfiles within a <VirtualHost>
        # container, they will be logged here.  Contrariwise, if you *do*
        # define per-<VirtualHost> access logfiles, transactions will be
        # logged therein and *not* in this file.
        CustomLog "logs/access_log" common
        # If you prefer a logfile with access, agent, and referer information
        # (Combined Logfile Format) you can use the following directive.
        #CustomLog "logs/access_log" combined
    </IfModule>
    <IfModule alias_module>
        # Redirect: Allows you to tell clients about documents that used to
        # exist in your server's namespace, but do not anymore. The client
        # will make a new request for the document at its new location.
        # Example:
        # Redirect permanent /foo http://www.example.com/bar
        # Alias: Maps web paths into filesystem paths and is used to
        # access content that does not live under the DocumentRoot.
        # Example:
        # Alias /webpath /full/filesystem/path
        # If you include a trailing / on /webpath then the server will
        # require it to be present in the URL.  You will also likely
        # need to provide a <Directory> section to allow access to
        # the filesystem path.
        # ScriptAlias: This controls which directories contain server scripts.
        # ScriptAliases are essentially the same as Aliases, except that
        # documents in the target directory are treated as applications and
        # run by the server when requested rather than as documents sent to the
        # client.  The same rules about trailing "/" apply to ScriptAlias
        # directives as to Alias.
        ScriptAlias /cgi-bin/ "/sapcontreps/apache/cgi-bin/"
    </IfModule>
    <IfModule cgid_module>
        # ScriptSock: On threaded servers, designate the path to the UNIX
        # socket used to communicate with the CGI daemon of mod_cgid.
        #Scriptsock cgisock
    </IfModule>
    # "/sapcontreps/apache/cgi-bin" should be changed to whatever your ScriptAliased
    # CGI directory exists, if you have that configured.
    <Directory "/sapcontreps/apache/cgi-bin">
        AllowOverride None
        Options None
        Require all granted
    </Directory>
    <IfModule mime_module>
        # TypesConfig points to the file containing the list of mappings from
        # filename extension to MIME-type.
        TypesConfig conf/mime.types
        # AddType allows you to add to or override the MIME configuration
        # file specified in TypesConfig for specific file types.
        #AddType application/x-gzip .tgz
        # AddEncoding allows you to have certain browsers uncompress
        # information on the fly. Note: Not all browsers support this.
        #AddEncoding x-compress .Z
        #AddEncoding x-gzip .gz .tgz
        # If the AddEncoding directives above are commented-out, then you
        # probably should define those extensions to indicate media types:
        AddType application/x-compress .Z
        AddType application/x-gzip .gz .tgz
        # AddHandler allows you to map certain file extensions to "handlers":
        # actions unrelated to filetype. These can be either built into the server
        # or added with the Action directive (see below)
        # To use CGI scripts outside of ScriptAliased directories:
        # (You will also need to add "ExecCGI" to the "Options" directive.)
        #AddHandler cgi-script .cgi
        # For type maps (negotiated resources):
        #AddHandler type-map var
        # Filters allow you to process content before it is sent to the client.
        # To parse .shtml files for server-side includes (SSI):
        # (You will also need to add "Includes" to the "Options" directive.)
        #AddType text/html .shtml
        #AddOutputFilter INCLUDES .shtml
    </IfModule>
    # The mod_mime_magic module allows the server to use various hints from the
    # contents of the file itself to determine its type.  The MIMEMagicFile
    # directive tells the module where the hint definitions are located.
    #MIMEMagicFile conf/magic
    # Customizable error responses come in three flavors:
    # 1) plain text 2) local redirects 3) external redirects
    # Some examples:
    #ErrorDocument 500 "The server made a boo boo."
    #ErrorDocument 404 /missing.html
    #ErrorDocument 404 "/cgi-bin/missing_handler.pl"
    #ErrorDocument 402 http://www.example.com/subscription_info.html
    # MaxRanges: Maximum number of Ranges in a request before
    # returning the entire resource, or one of the special
    # values 'default', 'none' or 'unlimited'.
    # Default setting is to accept 200 Ranges.
    #MaxRanges unlimited
    # EnableMMAP and EnableSendfile: On systems that support it,
    # memory-mapping or the sendfile syscall may be used to deliver
    # files.  This usually improves server performance, but must
    # be turned off when serving from networked-mounted
    # filesystems or if support for these functions is otherwise
    # broken on your system.
    # Defaults: EnableMMAP On, EnableSendfile Off
    #EnableMMAP off
    #EnableSendfile on
    # Supplemental configuration
    # The configuration files in the conf/extra/ directory can be
    # included to add extra features or to modify the default configuration of
    # the server, or you may simply copy their contents here and change as
    # necessary.
    # Server-pool management (MPM specific)
    #Include conf/extra/httpd-mpm.conf
    # Multi-language error messages
    #Include conf/extra/httpd-multilang-errordoc.conf
    # Fancy directory listings
    #Include conf/extra/httpd-autoindex.conf
    # Language settings
    #Include conf/extra/httpd-languages.conf
    # User home directories
    #Include conf/extra/httpd-userdir.conf
    # Real-time info on requests and configuration
    #Include conf/extra/httpd-info.conf
    # Virtual hosts
    #Include conf/extra/httpd-vhosts.conf
    # Local access to the Apache HTTP Server Manual
    #Include conf/extra/httpd-manual.conf
    # Distributed authoring and versioning (WebDAV)
    #Include conf/extra/httpd-dav.conf
    # Various default settings
    #Include conf/extra/httpd-default.conf
    # Configure mod_proxy_html to understand HTML4/XHTML1
    <IfModule proxy_html_module>
    Include conf/extra/proxy-html.conf
    </IfModule>
    # Secure (SSL/TLS) connections
    #Include conf/extra/httpd-ssl.conf
    # Note: The following must must be present to support
    #       starting without SSL on platforms with no /dev/random equivalent
    #       but a statically compiled-in mod_ssl.
    <IfModule ssl_module>
    SSLRandomSeed startup builtin
    SSLRandomSeed connect builtin
    </IfModule>
    # uncomment out the below to deal with user agents that deliberately
    # violate open standards by misusing DNT (DNT *must* be a specific
    # end-user choice)
    #<IfModule setenvif_module>
    #BrowserMatch "MSIE 10.0;" bad_DNT
    #</IfModule>
    #<IfModule headers_module>
    #RequestHeader unset DNT env=bad_DNT
    #</IfModule>
    <IfModule mod_sapcs.cpp>
      AddModuleInfo ContentServer "SAP Content Server 640/0 (Prototype) (C) SAP AG 1998, 2001"
      CSConfigPath /sapcontreps/conf/cs.conf
      <Location /sapcs>
      SetHandler sapcs_module
      Allow from all
      </Location>
      <Location /ContentServer/ContentServer.dll>
      SetHandler sapcs_module
      Allow from all
      </Location>
      <Location /contentserver/contentserver.dll>
      SetHandler sapcs_module
      Allow from all
      </Location>
    </IfModule>
    Second parameter,
    rgdeverp:(/sapcontreps/apache/modules)(root)#ls -la /sapcontreps/apache/modules
    total 5544
    drwxrwxrwx  2 sapcs sapsys   4096 Jun 12 15:46 .
    drwxrwxrwx 15 sapcs sapsys   4096 Jun 12 14:56 ..
    -rwxrwxrwx  1 sapcs sapsys  13836 Jun 12 14:54 httpd.exp
    lrwxrwxrwx  1 sapcs sapsys     34 Jun 12 15:46 libsapsecu.so -> /sapcontreps/modules/libsapsecu.so
    -rwxrwxrwx  1 sapcs sapsys  34756 Jun 12 14:56 mod_access_compat.so
    -rwxrwxrwx  1 sapcs sapsys  31861 Jun 12 14:56 mod_actions.so
    -rwxrwxrwx  1 sapcs sapsys  44418 Jun 12 14:56 mod_alias.so
    -rwxrwxrwx  1 sapcs sapsys  30426 Jun 12 14:56 mod_allowmethods.so
    -rwxrwxrwx  1 sapcs sapsys  41605 Jun 12 14:56 mod_auth_basic.so
    -rwxrwxrwx  1 sapcs sapsys  84126 Jun 12 14:56 mod_auth_digest.so
    -rwxrwxrwx  1 sapcs sapsys  68399 Jun 12 14:56 mod_auth_form.so
    -rwxrwxrwx  1 sapcs sapsys  30531 Jun 12 14:56 mod_authn_anon.so
    -rwxrwxrwx  1 sapcs sapsys  36079 Jun 12 14:56 mod_authn_core.so
    -rwxrwxrwx  1 sapcs sapsys  40100 Jun 12 14:56 mod_authn_dbd.so
    -rwxrwxrwx  1 sapcs sapsys  32532 Jun 12 14:56 mod_authn_dbm.so
    -rwxrwxrwx  1 sapcs sapsys  32359 Jun 12 14:56 mod_authn_file.so
    -rwxrwxrwx  1 sapcs sapsys  49757 Jun 12 14:56 mod_authn_socache.so
    -rwxrwxrwx  1 sapcs sapsys  61854 Jun 12 14:56 mod_authz_core.so
    -rwxrwxrwx  1 sapcs sapsys  42581 Jun 12 14:56 mod_authz_dbd.so
    -rwxrwxrwx  1 sapcs sapsys  35071 Jun 12 14:56 mod_authz_dbm.so
    -rwxrwxrwx  1 sapcs sapsys  34704 Jun 12 14:56 mod_authz_groupfile.so
    -rwxrwxrwx  1 sapcs sapsys  35256 Jun 12 14:56 mod_authz_host.so
    -rwxrwxrwx  1 sapcs sapsys  30435 Jun 12 14:56 mod_authz_owner.so
    -rwxrwxrwx  1 sapcs sapsys  30802 Jun 12 14:56 mod_authz_user.so
    -rwxrwxrwx  1 sapcs sapsys 105072 Jun 12 14:56 mod_autoindex.so
    -rwxrwxrwx  1 sapcs sapsys  34253 Jun 12 14:56 mod_buffer.so
    -rwxrwxrwx  1 sapcs sapsys 192292 Jun 12 14:56 mod_cache.so
    -rwxrwxrwx  1 sapcs sapsys  84567 Jun 12 14:56 mod_cache_disk.so
    -rwxrwxrwx  1 sapcs sapsys  88616 Jun 12 14:56 mod_cache_socache.so
    -rwxrwxrwx  1 sapcs sapsys  98717 Jun 12 14:56 mod_cgid.so
    -rwxrwxrwx  1 sapcs sapsys 354271 Jun 12 14:56 mod_dav.so
    -rwxrwxrwx  1 sapcs sapsys 189761 Jun 12 14:56 mod_dav_fs.so
    -rwxrwxrwx  1 sapcs sapsys  59275 Jun 12 14:56 mod_dbd.so
    -rwxrwxrwx  1 sapcs sapsys  35504 Jun 12 14:56 mod_dir.so
    -rwxrwxrwx  1 sapcs sapsys  33559 Jun 12 14:56 mod_dumpio.so
    -rwxrwxrwx  1 sapcs sapsys  31544 Jun 12 14:56 mod_env.so
    -rwxrwxrwx  1 sapcs sapsys  40037 Jun 12 14:56 mod_expires.so
    -rwxrwxrwx  1 sapcs sapsys  63988 Jun 12 14:56 mod_ext_filter.so
    -rwxrwxrwx  1 sapcs sapsys  39211 Jun 12 14:56 mod_file_cache.so
    -rwxrwxrwx  1 sapcs sapsys  52811 Jun 12 14:56 mod_filter.so
    -rwxrwxrwx  1 sapcs sapsys  60936 Jun 12 14:56 mod_headers.so
    -rwxrwxrwx  1 sapcs sapsys 158790 Jun 12 14:56 mod_include.so
    -rwxrwxrwx  1 sapcs sapsys  66838 Jun 12 14:56 mod_info.so
    -rwxrwxrwx  1 sapcs sapsys  36196 Jun 12 14:56 mod_lbmethod_bybusyness.so
    -rwxrwxrwx  1 sapcs sapsys  36188 Jun 12 14:56 mod_lbmethod_byrequests.so
    -rwxrwxrwx  1 sapcs sapsys  36192 Jun 12 14:56 mod_lbmethod_bytraffic.so
    -rwxrwxrwx  1 sapcs sapsys  48496 Jun 12 14:56 mod_lbmethod_heartbeat.so
    -rwxrwxrwx  1 sapcs sapsys  86665 Jun 12 14:56 mod_log_config.so
    -rwxrwxrwx  1 sapcs sapsys  40163 Jun 12 14:56 mod_log_debug.so
    -rwxrwxrwx  1 sapcs sapsys  31797 Jun 12 14:56 mod_logio.so
    -rwxrwxrwx  1 sapcs sapsys  48254 Jun 12 14:56 mod_macro.so
    -rwxrwxrwx  1 sapcs sapsys  54195 Jun 12 14:56 mod_mime.so
    -rwxrwxrwx  1 sapcs sapsys 106526 Jun 12 14:56 mod_negotiation.so
    -rwxrwxrwx  1 sapcs sapsys 291551 Jun 12 14:56 mod_proxy.so
    -rwxrwxrwx  1 sapcs sapsys 171766 Jun 12 14:56 mod_proxy_ajp.so
    -rwxrwxrwx  1 sapcs sapsys 108144 Jun 12 14:56 mod_proxy_balancer.so
    -rwxrwxrwx  1 sapcs sapsys  54249 Jun 12 14:56 mod_proxy_connect.so
    -rwxrwxrwx  1 sapcs sapsys  38536 Jun 12 14:56 mod_proxy_express.so
    -rwxrwxrwx  1 sapcs sapsys  61607 Jun 12 14:56 mod_proxy_fcgi.so
    -rwxrwxrwx  1 sapcs sapsys 112538 Jun 12 14:56 mod_proxy_ftp.so
    -rwxrwxrwx  1 sapcs sapsys 114424 Jun 12 14:56 mod_proxy_http.so
    -rwxrwxrwx  1 sapcs sapsys  56400 Jun 12 14:56 mod_proxy_scgi.so
    -rwxrwxrwx  1 sapcs sapsys  55514 Jun 12 14:56 mod_proxy_wstunnel.so
    -rwxrwxrwx  1 sapcs sapsys  32760 Jun 12 14:56 mod_ratelimit.so
    -rwxrwxrwx  1 sapcs sapsys  40376 Jun 12 14:56 mod_remoteip.so
    -rwxrwxrwx  1 sapcs sapsys  45091 Jun 12 14:56 mod_reqtimeout.so
    -rwxrwxrwx  1 sapcs sapsys  37224 Jun 12 14:56 mod_request.so
    -rwxrwxrwx  1 sapcs sapsys 171049 Jun 12 14:56 mod_rewrite.so
    lrwxrwxrwx  1 sapcs sapsys     35 Jun 12 15:46 mod_sapcs22.so -> /sapcontreps/modules/mod_sapcs22.so
    -rwxrwxrwx  1 sapcs sapsys 119242 Jun 12 14:56 mod_sed.so
    -rwxrwxrwx  1 sapcs sapsys  57944 Jun 12 14:56 mod_session.so
    -rwxrwxrwx  1 sapcs sapsys  32806 Jun 12 14:56 mod_session_cookie.so
    -rwxrwxrwx  1 sapcs sapsys  47023 Jun 12 14:56 mod_session_dbd.so
    -rwxrwxrwx  1 sapcs sapsys  44102 Jun 12 14:56 mod_setenvif.so
    -rwxrwxrwx  1 sapcs sapsys  53976 Jun 12 14:56 mod_slotmem_shm.so
    -rwxrwxrwx  1 sapcs sapsys  45214 Jun 12 14:56 mod_socache_dbm.so
    -rwxrwxrwx  1 sapcs sapsys  35686 Jun 12 14:56 mod_socache_memcache.so
    -rwxrwxrwx  1 sapcs sapsys  68519 Jun 12 14:56 mod_socache_shmcb.so
    -rwxrwxrwx  1 sapcs sapsys  39669 Jun 12 14:56 mod_speling.so
    -rwxrwxrwx  1 sapcs sapsys  63924 Jun 12 14:56 mod_status.so
    -rwxrwxrwx  1 sapcs sapsys  43320 Jun 12 14:56 mod_substitute.so
    -rwxrwxrwx  1 sapcs sapsys  33237 Jun 12 14:56 mod_unique_id.so
    -rwxrwxrwx  1 sapcs sapsys  33466 Jun 12 14:56 mod_unixd.so
    -rwxrwxrwx  1 sapcs sapsys  33615 Jun 12 14:56 mod_userdir.so
    -rwxrwxrwx  1 sapcs sapsys  25961 Jun 12 14:56 mod_version.so
    -rwxrwxrwx  1 sapcs sapsys  37707 Jun 12 14:56 mod_vhost_alias.so
    But when stop or stat I have the error,
    rgqaserp:(/sapcontreps/apache/bin)(root)#./apachectl start
    httpd: Syntax error on line 66 of /sapcontreps/apache/conf/httpd.conf: Cannot load modules/mod_sapcs22.so into server: /sapcontreps/apache/modules/mod_sapcs22.so: ELF file data encoding not little-endian
    Can you help me?
    Thanks

  • Interactive PDF form in Activities - Error in Content Server

    Hi Experts,
    We would like to display an interactive PDF form in the attachements of activities.
    But the new windows shows nothing.
    First we thought this was an error due to Interactive Forms, but then we found out that Content Server has obviously some problems with this generated PDF and assigns a Content Length = 0 to all these generated documents.
    Please find attached some ICM traces, which shows this
    content length = 0.
    M  ICTSYS: AddHeaderField 'Content-Type' -> 'application/pdf'
    M  ICTSYS: AddHeaderField 'Content-Disposition' -> 'inline; filename="Interview.pdf"'
    M  ICTSYS: AddHeaderField 'X-compId' -> 'Interview.pdf'
    M  ICTSYS: AddHeaderField 'X-Content-Length' -> '0 '
    M  ICTSYS: AddHeaderField 'X-compDateC' -> '2007-02-06'
    M  ICTSYS: AddHeaderField 'X-compTimeC' -> '07:35:17'
    M  ICTSYS: AddHeaderField 'X-compDateM' -> '2007-02-06'
    M  ICTSYS: AddHeaderField 'X-compTimeM' -> '07:35:17'
    M  ICTSYS: AddHeaderField 'X-compStatus' -> 'online'
    M  ICTSYS: AddHeaderField 'X-pVersion' -> '0046'
    M  ICTSYS: AddHeaderField 'X-docProt' -> 'dru'
    M  ICTSYS: SetData data=00000000 off=0 len=0
    M  ICTSYS: SetStatus 200 OKICTSYS: AddHeaderField 'server' -> 'SAP Web Application Server (1.0;700)'
    A  SYSTEM-CALL RFC_ID id RFC_VALUE value
    A  RFC-SYSTEM> ID[0, type :0]: len:4 val:HTTP
    All suggestion are welcome!
    Best regards,
    Levente Bartha

    To have information entered once in a text field, and then have information repeat in subsequent fields, the name of each text field form needs to be identical. In screen shot, both fields are named the same

  • Content Server not working correctly

    Hello,
    I am having problems with my Tandberg Content Server. For several years, we have used the Tandberg Content Server (TCS) in combination with our Tandberg Management Server (TMS) to schedule and record video conferences. I schedule 60 video conferences a week to roughly 20 rooms, using the TMS. Of these, about 14 video conferences per week are recorded.
    Originally, I only had one recording alias on the TCS set up, and it worked fine. But I recently added a second recording alias, due to the growing number of requests for recordings of the video conferences. It seemed to go okay.
    Now, however, the Content Server isn't working quite right. It will record two different video conferences at the same time, but once it's finished encoding them, the link that you get to send to people is messed up: often (but not always) the link merges two seperate video conferences together in one video. Two one-hour video conferences will be merged together in one two-hour recorded conference.
    The problem only occurs with video conferences that occur at the same time. Strangely, if I search the Content Server's F drive, under Data/Media, the recordings are all there, and they are seperate. They are only joined together on the Content Server link.
    I have made sure that we are indeed recording on seperate recording aliases.
    Because the videos in the Data/Media bin are always labled something like O1110292903-0593923929.wmv, I can use guesswork to reconstruct a valid URL to get a working link, but it's a lot of extra work: I want to be able to log in to the Content Server admin interface and be able to send someone a link in a few minutes.
    Any ideas on what's going wrong? I created a trouble ticket with Cisco earlier in the week, but have not heard back from Cisco tech support, so I thought I'd open it to the Cisco community.

    HI Ron.  Good morning.  Since our webex the last time, I do believe we can use participant templates in the mean time until we find out whats going on when using TMS this way.  When using the recording drop down and all the systems aren't registered to Gatekeeper seems to be the trigger here, but to get you running, this is what I propose we try and do here. 
    You may have to purge the Content Server out of TMS so TMS doesn't "know" about the IP address of the Content Server. 
    You will have to examine your routing and preferred MCU in routing here, and make the two changes:
    Administrative Tools>Configuration>Conference Settings.  All the way at the bottom you will see:
    I had to change this to Always and Preferred MCU type in routing to MPS.  This is logical since this is the only MCU you have and you need the MCU in each booking (from my understanding of what you said during the webex).
    So:
    1) Jot down all the conferences that have the Content Server involved, and remove the recording from each conference.
    2) Purge the Content Server from TMS.
    3) Add participant template with just the IP address of the content server: Booking>Participant Templates and build one like shown below.  The number field should be the address of the content server and IP zone should be IP zone for your system. 
    Go ahead and save the template. 
    Make booking with this template and another endpoint (don't add the MPS since it should automatically).  Check the connection settings and the MPS should be call the IP of the TCS and the other endpoint. 
    Click Save conference. 
    If the conference saves ok, build another with a different room and same template again, and click save conference. 
    The caveat is that when calling the IP of the TCS, the TCS will use what you have configured as the default recording template under Configuration>Site Settings
    Just choose which one you want to use all the time if you can. 
    The way it shows on the TCS is:

  • Content Server - character display problem

    We have a portal where the content is all in Italian.
    When users are adding content in Content Server, the HTML editor shows international characters correctly.
    But when they are published, these characters mess up and do not seem to be getting encoded properly.
    How can I get international characters to display properly in Content Server??

    Hi Andrew,When you add content in Content Server 5.0, the text is encoded in UTF-8 (an encoding of Unicode). Content Server uses Unicode so that content in any language of the world can be added to Content Server. However UTF-8 characters will not be recognized as UTF-8 by most browsers unless you also add a "meta" tag which identifies the data as UTF-8.
    The meta tag looks like this:<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=UTF-8">
    Content Server makes adding the tag easy with a feature in the Presentation Template editor. Just "right-click" on the rich-text editor window and select the "Insert HTML shell" menu item. This will give you the proper <html>, <head>, and <body> tags that go with a properly formed HTML page. The meta tag will also be automatically inserted inside the <head> tag.
    Regards,Paul Deuter

  • Create PDF based on spool ID and store on content server

    Hi all,
    I need to create a PDF file from a spool ID and store this in a repository on the content server (archive). How can I do this <b>without creating a physical file on the local workstation</b>?
    All helpful answers will be rewarded!
    - Mari Virik

    Hi Mari,
    This is a sample report pgm which create pdf file from spool id :
    PARAMETER: p_email1 LIKE somlreci1-receiver
                                        DEFAULT '[email protected]',
               p_sender LIKE somlreci1-receiver
                                        DEFAULT '[email protected]',
               p_delspl  AS CHECKBOX.
    *DATA DECLARATION
    DATA: gd_recsize TYPE i.
    Spool IDs
    TYPES: BEGIN OF t_tbtcp.
            INCLUDE STRUCTURE tbtcp.
    TYPES: END OF t_tbtcp.
    DATA: it_tbtcp TYPE STANDARD TABLE OF t_tbtcp INITIAL SIZE 0,
          wa_tbtcp TYPE t_tbtcp.
    Job Runtime Parameters
    DATA: gd_eventid LIKE tbtcm-eventid,
          gd_eventparm LIKE tbtcm-eventparm,
          gd_external_program_active LIKE tbtcm-xpgactive,
          gd_jobcount LIKE tbtcm-jobcount,
          gd_jobname LIKE tbtcm-jobname,
          gd_stepcount LIKE tbtcm-stepcount,
          gd_error    TYPE sy-subrc,
          gd_reciever TYPE sy-subrc.
    DATA:  w_recsize TYPE i.
    DATA: gd_subject   LIKE sodocchgi1-obj_descr,
          it_mess_bod LIKE solisti1 OCCURS 0 WITH HEADER LINE,
          it_mess_att LIKE solisti1 OCCURS 0 WITH HEADER LINE,
          gd_sender_type     LIKE soextreci1-adr_typ,
          gd_attachment_desc TYPE so_obj_nam,
          gd_attachment_name TYPE so_obj_des.
    Spool to PDF conversions
    DATA: gd_spool_nr LIKE tsp01-rqident,
          gd_destination LIKE rlgrap-filename,
          gd_bytecount LIKE tst01-dsize,
          gd_buffer TYPE string.
    Binary store for PDF
    DATA: BEGIN OF it_pdf_output OCCURS 0.
            INCLUDE STRUCTURE tline.
    DATA: END OF it_pdf_output.
    CONSTANTS: c_dev LIKE  sy-sysid VALUE 'DEV',
               c_no(1)     TYPE c   VALUE ' ',
               c_device(4) TYPE c   VALUE 'LOCL'.
    *START-OF-SELECTION.
    START-OF-SELECTION.
    Write statement to represent report output. Spool request is created
    if write statement is executed in background. This could also be an
    ALV grid which would be converted to PDF without any extra effort
      WRITE 'Hello World'.
      new-page.
      commit work.
      new-page print off.
      IF sy-batch EQ 'X'.
        PERFORM get_job_details.
        PERFORM obtain_spool_id.
    Alternative way could be to submit another program and store spool
    id into memory, will be stored in sy-spono.
    *submit ZSPOOLTOPDF2
           to sap-spool
           spool parameters   %_print
           archive parameters %_print
           without spool dynpro
           and return.
    Get spool id from program called above
    IMPORT w_spool_nr FROM MEMORY ID 'SPOOLTOPDF'.
        PERFORM convert_spool_to_pdf.
        PERFORM process_email.
        if p_delspl EQ 'X'.
          PERFORM delete_spool.
        endif.
        IF sy-sysid = c_dev.
          wait up to 5 seconds.
          SUBMIT rsconn01 WITH mode   = 'INT'
                          WITH output = 'X'
                          AND RETURN.
        ENDIF.
      ELSE.
        SKIP.
        WRITE:/ 'Program must be executed in background in-order for spool',
                'request to be created.'.
      ENDIF.
          FORM obtain_spool_id                                          *
    FORM obtain_spool_id.
      CHECK NOT ( gd_jobname IS INITIAL ).
      CHECK NOT ( gd_jobcount IS INITIAL ).
      SELECT * FROM  tbtcp
                     INTO TABLE it_tbtcp
                     WHERE      jobname     = gd_jobname
                     AND        jobcount    = gd_jobcount
                     AND        stepcount   = gd_stepcount
                     AND        listident   <> '0000000000'
                     ORDER BY   jobname
                                jobcount
                                stepcount.
      READ TABLE it_tbtcp INTO wa_tbtcp INDEX 1.
      IF sy-subrc = 0.
        message s004(zdd) with gd_spool_nr.
        gd_spool_nr = wa_tbtcp-listident.
        MESSAGE s004(zdd) WITH gd_spool_nr.
      ELSE.
        MESSAGE s005(zdd).
      ENDIF.
    ENDFORM.
          FORM get_job_details                                          *
    FORM get_job_details.
    Get current job details
      CALL FUNCTION 'GET_JOB_RUNTIME_INFO'
           IMPORTING
                eventid                 = gd_eventid
                eventparm               = gd_eventparm
                external_program_active = gd_external_program_active
                jobcount                = gd_jobcount
                jobname                 = gd_jobname
                stepcount               = gd_stepcount
           EXCEPTIONS
                no_runtime_info         = 1
                OTHERS                  = 2.
    ENDFORM.
          FORM convert_spool_to_pdf                                     *
    FORM convert_spool_to_pdf.
      CALL FUNCTION 'CONVERT_ABAPSPOOLJOB_2_PDF'
           EXPORTING
                src_spoolid              = gd_spool_nr
                no_dialog                = c_no
                dst_device               = c_device
           IMPORTING
                pdf_bytecount            = gd_bytecount
           TABLES
                pdf                      = it_pdf_output
           EXCEPTIONS
                err_no_abap_spooljob     = 1
                err_no_spooljob          = 2
                err_no_permission        = 3
                err_conv_not_possible    = 4
                err_bad_destdevice       = 5
                user_cancelled           = 6
                err_spoolerror           = 7
                err_temseerror           = 8
                err_btcjob_open_failed   = 9
                err_btcjob_submit_failed = 10
                err_btcjob_close_failed  = 11
                OTHERS                   = 12.
      CHECK sy-subrc = 0.
    Transfer the 132-long strings to 255-long strings
      LOOP AT it_pdf_output.
        TRANSLATE it_pdf_output USING ' ~'.
        CONCATENATE gd_buffer it_pdf_output INTO gd_buffer.
      ENDLOOP.
      TRANSLATE gd_buffer USING '~ '.
      DO.
        it_mess_att = gd_buffer.
        APPEND it_mess_att.
        SHIFT gd_buffer LEFT BY 255 PLACES.
        IF gd_buffer IS INITIAL.
          EXIT.
        ENDIF.
      ENDDO.
    ENDFORM.
          FORM process_email                                            *
    FORM process_email.
      DESCRIBE TABLE it_mess_att LINES gd_recsize.
      CHECK gd_recsize > 0.
      PERFORM send_email USING p_email1.
    perform send_email using p_email2.
    ENDFORM.
          FORM send_email                                               *
    -->  p_email                                                       *
    FORM send_email USING p_email.
      CHECK NOT ( p_email IS INITIAL ).
      REFRESH it_mess_bod.
    Default subject matter
      gd_subject         = 'Subject'.
      gd_attachment_desc = 'Attachname'.
    CONCATENATE 'attach_name' ' ' INTO gd_attachment_name.
      it_mess_bod        = 'Message Body text, line 1'.
      APPEND it_mess_bod.
      it_mess_bod        = 'Message Body text, line 2...'.
      APPEND it_mess_bod.
    If no sender specified - default blank
      IF p_sender EQ space.
        gd_sender_type  = space.
      ELSE.
        gd_sender_type  = 'INT'.
      ENDIF.
    Send file by email as .xls speadsheet
      PERFORM send_file_as_email_attachment
                                   tables it_mess_bod
                                          it_mess_att
                                    using p_email
                                          'Example .xls documnet attachment'
                                          'PDF'
                                          gd_attachment_name
                                          gd_attachment_desc
                                          p_sender
                                          gd_sender_type
                                 changing gd_error
                                          gd_reciever.
    ENDFORM.
          FORM delete_spool                                             *
    FORM delete_spool.
      DATA: ld_spool_nr TYPE tsp01_sp0r-rqid_char.
      ld_spool_nr = gd_spool_nr.
      CHECK p_delspl <> c_no.
      CALL FUNCTION 'RSPO_R_RDELETE_SPOOLREQ'
           EXPORTING
                spoolid = ld_spool_nr.
    ENDFORM.
    *&      Form  SEND_FILE_AS_EMAIL_ATTACHMENT
          Send email
    FORM send_file_as_email_attachment tables it_message
                                              it_attach
                                        using p_email
                                              p_mtitle
                                              p_format
                                              p_filename
                                              p_attdescription
                                              p_sender_address
                                              p_sender_addres_type
                                     changing p_error
                                              p_reciever.
      DATA: ld_error    TYPE sy-subrc,
            ld_reciever TYPE sy-subrc,
            ld_mtitle LIKE sodocchgi1-obj_descr,
            ld_email LIKE  somlreci1-receiver,
            ld_format TYPE  so_obj_tp ,
            ld_attdescription TYPE  so_obj_nam ,
            ld_attfilename TYPE  so_obj_des ,
            ld_sender_address LIKE  soextreci1-receiver,
            ld_sender_address_type LIKE  soextreci1-adr_typ,
            ld_receiver LIKE  sy-subrc.
    data:   t_packing_list like sopcklsti1 occurs 0 with header line,
            t_contents like solisti1 occurs 0 with header line,
            t_receivers like somlreci1 occurs 0 with header line,
            t_attachment like solisti1 occurs 0 with header line,
            t_object_header like solisti1 occurs 0 with header line,
            w_cnt type i,
            w_sent_all(1) type c,
            w_doc_data like sodocchgi1.
      ld_email   = p_email.
      ld_mtitle = p_mtitle.
      ld_format              = p_format.
      ld_attdescription      = p_attdescription.
      ld_attfilename         = p_filename.
      ld_sender_address      = p_sender_address.
      ld_sender_address_type = p_sender_addres_type.
    Fill the document data.
      w_doc_data-doc_size = 1.
    Populate the subject/generic message attributes
      w_doc_data-obj_langu = sy-langu.
      w_doc_data-obj_name  = 'SAPRPT'.
      w_doc_data-obj_descr = ld_mtitle .
      w_doc_data-sensitivty = 'F'.
    Fill the document data and get size of attachment
      CLEAR w_doc_data.
      READ TABLE it_attach INDEX w_cnt.
      w_doc_data-doc_size =
         ( w_cnt - 1 ) * 255 + STRLEN( it_attach ).
      w_doc_data-obj_langu  = sy-langu.
      w_doc_data-obj_name   = 'SAPRPT'.
      w_doc_data-obj_descr  = ld_mtitle.
      w_doc_data-sensitivty = 'F'.
      CLEAR t_attachment.
      REFRESH t_attachment.
      t_attachment[] = it_attach[].
    Describe the body of the message
      CLEAR t_packing_list.
      REFRESH t_packing_list.
      t_packing_list-transf_bin = space.
      t_packing_list-head_start = 1.
      t_packing_list-head_num = 0.
      t_packing_list-body_start = 1.
      DESCRIBE TABLE it_message LINES t_packing_list-body_num.
      t_packing_list-doc_type = 'RAW'.
      APPEND t_packing_list.
    Create attachment notification
      t_packing_list-transf_bin = 'X'.
      t_packing_list-head_start = 1.
      t_packing_list-head_num   = 1.
      t_packing_list-body_start = 1.
      DESCRIBE TABLE t_attachment LINES t_packing_list-body_num.
      t_packing_list-doc_type   =  ld_format.
      t_packing_list-obj_descr  =  ld_attdescription.
      t_packing_list-obj_name   =  ld_attfilename.
      t_packing_list-doc_size   =  t_packing_list-body_num * 255.
      APPEND t_packing_list.
    Add the recipients email address
      CLEAR t_receivers.
      REFRESH t_receivers.
      t_receivers-receiver = ld_email.
      t_receivers-rec_type = 'U'.
      t_receivers-com_type = 'INT'.
      t_receivers-notif_del = 'X'.
      t_receivers-notif_ndel = 'X'.
      APPEND t_receivers.
      CALL FUNCTION 'SO_DOCUMENT_SEND_API1'
           EXPORTING
                document_data              = w_doc_data
                put_in_outbox              = 'X'
                sender_address             = ld_sender_address
                sender_address_type        = ld_sender_address_type
                commit_work                = 'X'
           IMPORTING
                sent_to_all                = w_sent_all
           TABLES
                packing_list               = t_packing_list
                contents_bin               = t_attachment
                contents_txt               = it_message
                receivers                  = t_receivers
           EXCEPTIONS
                too_many_receivers         = 1
                document_not_sent          = 2
                document_type_not_exist    = 3
                operation_no_authorization = 4
                parameter_error            = 5
                x_error                    = 6
                enqueue_error              = 7
                OTHERS                     = 8.
    Populate zerror return code
      ld_error = sy-subrc.
    Populate zreceiver return code
      LOOP AT t_receivers.
        ld_receiver = t_receivers-retrn_code.
      ENDLOOP.
    ENDFORM.
    <b>and then use archiving object to store the photo i have explained you as an example</b>
    You have to create a content repository "A2" or another . You have to follow then next steps :
    Create a content repository with storage type FILE archive.
    Tcode     OAC0
    IMG:      Basis Components  Basis Services  SAP Archive Link  Basic Settings  Maintain content repositories
    (Embedded image moved to file: pic00041.pcx)
    Swap from display to amend. Select a current entry and 'copy' or just hit 'create'. Then select .
    (Embedded image moved to file: pic18467.pcx)
    Then fill in the details as below:
    Choose a two char name
    Set DocArea to be 'Archive Link'
    Storage type FILE archive (see Note below on how to get this!)
    Choose Version no. 0031
    Enter the path name where the photos are to be loaded from. Note this is for loading only. When the photos are linked into the sap system (see later), actually, SAP takes a 'copy' and stores it elsewhere. The path may only need to be entered to 'Arch.path', but entering to all three doesn't seem to hurt.
    Note on storage type:
    Storage type 'FILE archive' may not be in the dropdown list, and F4 (poss entries) may not work! If this is the case, click on the field Storage type (left mouse button) and then click the right mouse button. Choose Possible entries and a full list of all
    possible storage types is shown. FILE archive is entry number 08 and then
    Check which content repository (Archive) is linked to document type HRICOLFOTO in object type PREL.
    Tcode     OAC3
    Table     TOAOM_C
    IMG:      Basis Components  Basis Services  SAP Archive Link  Basic Settings  Maintain Links
    (Embedded image moved to file: pic06334.pcx)
    Set the 'Content R' field to the one you've just set in the step above.
    Note the Ret.per. field is the retention period for the photo in MONTHS. (so the default is 833 years and 3 months!)
    Now you can link the photo to the employee.
    <b>Pls reward pts if found usefull :)</b>
    Regards
    Sathish

  • Error when viewing documents from content server

    hi all,
    I have a question.
    we have installed an SAP Content Server on Windows 2003 server, and have connected it to our SAP ECC 5.00 ERP.  The purpose is so that documents that are attached to a transaction (through Generic Objects Services - Create Attachment), get stored onto the content server rather than the SAP database.  We have done all the necessary configuration in oac0, oact, and SKPR08.  We are able to attach a document to the transaction, and it gets stored onto the content server.  Our issue is when viewing the attachment. 
    This is the error we are getting as soon as we try to view the attachment:
    "Windows cannot find c:\documents and settings\<username>\SAPWorkDir\<filename>.  Make sure you typed the name correctly, and then try again.  To search for a file, click the Start button, and then click Search."
    After pressing OK to the message, the system then gives this error:
    "File could not be exported
    Message no. SO315
    Diagnosis
    You have selected either the Export function or a PC document to be exported from the system. The file could not be exported to the
    PC. Possible reasons:
    1. The file is already open and is being used by an application.
    2. The directory to which the file is to be exported is write-protected.
    Procedure
    In the first case, close the application.
    In the second case, remove the write-protection attribute from the directory or enter another directory."
    Why is the system trying to open the file from the user's C:\ drive?
    Does anyone have a solution to this error?
    Cheers,

    Hi Aleem,
    Refer to below KB & note, this should help you.
    1849203 - Error message Database error for <GET DATA FROM KPRO> (SO013) and/or File could not be exported (SO315) when opening a document in Attachment list
    764972 - Errors when creating workflow attachment
    Regards,
    Ravi

  • How content server see Java jars in custom component?

    I put my Java class under mycomponent/classes and some jar under mycomponent/lib.
    Content server can call into my classes but can not see the jars under lib.
    Do I need other setup to let content server see the jars

    I added the jars in .hda file not not recoginize by component ,kinldy share the your .hda file which working
    my hda file data
    <?hda version="11gR1-11.1.1.3.0-idcprod1-100505T121221" jcharset=UTF8 encoding=utf-8?>
    @Properties LocalData
    blFieldTypes=
    hasPreferenceData=false
    classpathorder=10
    libpathorder=10
    blDateFormat=M/d{yy}{ h:mm[:ss]{ a}}!mAM,PM!tAmerica/Chicago
    libpath=D:/Oracle/Middleware/user_projects/domains/base_domain/ucm/cs/custom/Test/lib
    classpath=D:/Oracle/Middleware/user_projects/domains/base_domain/ucm/cs/custom/Test/classes;D:/Oracle/Middleware/user_projects/domains/base_domain/ucm/cs/custom/Test/lib/avalon-framework-api-4.3.1.jar;D:/Oracle/Middleware/user_projects/domains/base_domain/ucm/cs/custom/Test/lib/valon-framework-impl-4.3.1.jar;D:/Oracle/Middleware/user_projects/domains/base_domain/ucm/cs/custom/Test/lib/commons-codec-1.3.jar;D:/Oracle/Middleware/user_projects/domains/base_domain/ucm/cs/custom/Test/lib/commons-io-1.3.1.jar;D:/Oracle/Middleware/user_projects/domains/base_domain/ucm/cs/custom/Test/lib/commons-lang-2.4.jar;D:/Oracle/Middleware/user_projects/domains/base_domain/ucm/cs/custom/Test/lib/commons-logging-1.1.1.jar;D:/Oracle/Middleware/user_projects/domains/base_domain/ucm/cs/custom/Test/lib/commons-vfs-patched-1.9.1.jar;D:/Oracle/Middleware/user_projects/domains/base_domain/ucm/cs/custom/Test/lib/docx4j-2.5.0.jar;D:/Oracle/Middleware/user_projects/domains/base_domain/ucm/cs/custom/Test/lib/fop-patched-0.95.756437.jar;D:/Oracle/Middleware/user_projects/domains/base_domain/ucm/cs/custom/Test/lib/hwpf-3.4.0.jar;D:/Oracle/Middleware/user_projects/domains/base_domain/ucm/cs/custom/Test/lib/jcr-1.0.jar;D:/Oracle/Middleware/user_projects/domains/base_domain/ucm/cs/custom/Test/lib/jdom-1.0.jar;D:/Oracle/Middleware/user_projects/domains/base_domain/ucm/cs/custom/Test/lib/junit-4.4.jar;D:/Oracle/Middleware/user_projects/domains/base_domain/ucm/cs/custom/Test/lib/log4j-1.2.15.jar;D:/Oracle/Middleware/user_projects/domains/base_domain/ucm/cs/custom/Test/lib/parent-pointer-plugin-1.0.jar;D:/Oracle/Middleware/user_projects/domains/base_domain/ucm/cs/custom/Test/lib/wmf2svg-0.8.3.jar;D:/Oracle/Middleware/user_projects/domains/base_domain/ucm/cs/custom/Test/lib/xalan-patched-2.7.0.jar;D:/Oracle/Middleware/user_projects/domains/base_domain/ucm/cs/custom/Test/lib/xmlgraphics-commons-1.3.757686.jar;:/Oracle/Middleware/user_projects/domains/base_domain/ucm/cs/custom/Test/lib/server.zip
    ComponentName=Test
    version=11.1.1.3.0
    @end
    @ResultSet Filters
    4
    type
    location
    parameter
    loadOrder
    validateStandard
    test.CheckinFilter
    null
    1
    @end
    @ResultSet ClassAliases
    2
    classname
    location
    @end
    error geting while access java class which is part jar (docx jar )
    regards
    Varaprasad

  • Content server log showing exception in stream

    Hi all,
    I am connecting to ecm with the follwoing cod eand error
    on transfere stream is ocurring
    after connection was paralyesd for about 4 minutes then
    ecxeption occure then server log shows
    a service exception
    the follwoing is the used code
    PLZ HELP ME
    * Copyright (c) 1997-2001 IntraNet Solutions, Incorporated. All rights reserved.
    * Copyright (c) 2001-2007 Stellent, Incorporated. All rights reserved.
    package com.stellent.cis.sdk.samples.checkin;
    import java.net.MalformedURLException;
    import java.rmi.RemoteException;
    import java.util.Date;
    import java.io.File;
    import java.io.FileNotFoundException;
    import java.io.IOException;
    import com.stellent.cis.client.command.CommandException;
    import com.stellent.cis.client.io.ICISTransferStream;
    import com.stellent.cis.client.api.scs.ISCSContent;
    import com.stellent.cis.client.api.scs.ISCSContentID;
    import com.stellent.cis.client.api.scs.document.checkin.ISCSDocumentCheckinAPI;
    import com.stellent.cis.client.api.scs.document.checkin.ISCSCheckinFlags;
    import com.stellent.cis.client.api.scs.document.checkin.ISCSDocumentCheckinResponse;
    import com.twainconnect.sample.UCPMClient1;
    import java.io.FileInputStream;
    import java.io.InputStream;
    * This class shows how to check in a file into the content server. This takes a bunch of command line switches most of which is
    * optional. If some required values are not given, it creates random values for them.
    * -file : the absolute path to the file which is to be checked in (required)
    * -contentid : the content id of the document (auto generated)
    * -title : the title of the document (auto generated)
    * -type : the type of the document (defaults to ADACCT)
    * -securitygroup : the security group (defaults to Public)
    public class CheckinFile extends UCPMClient1 {
    // The path to the primary file of the document
    private String primaryFile = null;
    // The content id of the document
    private String contentId = null;
    // The title of the document
    private String title = null;
    // the type of the document
    private String type = null;
    // the security group of the document
    private String securityGroup = null;
    // The check in api from the cis
    private ISCSDocumentCheckinAPI api = null;
    public static void main(String[] args) {
    CheckinFile checkin = new CheckinFile();
    checkin.initialize(args);
    try {
    checkin.connect();
    checkin.execute();
    } catch (CommandException e) {
    e.printStackTrace();
    } catch (MalformedURLException e) {
    e.printStackTrace();
    } catch (RemoteException e) {
    e.printStackTrace();
    System.exit(0);
    * Executes the services to perform a content server check in.
    protected void execute() throws RemoteException, CommandException {
    // Get the Document check in api from the active api.
    api = getClient().getUCPMAPI().getActiveAPI().getDocumentCheckinAPI();
    // Perform a check in of the file with the values provided. The check in flags is generated in the method
    // getCheckinFlags(). Also see getActiveContent(), getActiveContentId()
    try {
    ICISTransferStream transferStream = getClient().getUCPMAPI().createTransferStream();
    transferStream.setFile(new File("D:\\ddd.doc"));
    System.out.println("read b4 get === "+transferStream.getInputStream().read());
    // InputStream inputStreamxx = new FileInputStream( );//transferStream.getInputStream();
    // FileInputStream inputStreamxx = new FileInputStream(new File("D:\\ddd.doc"));
    // transferStream.setInputStream(inputStreamxx);
    // System.out.println("after setting "+transferStream.getInputStream().read());
    // byte[] input = new byte[25];
    // for (int i = 0; i < input.length; i++) {
    // int b = transferStream.getInputStream().read(input);
    // if (b == -1)
    // break;
    // input[i] = (byte)b;
    // System.out.println("\n---------\n"+input.length);
    // System.out.println("Whole legnth= "+transferStream.getInputStream().read(input));
    // System.out.println(inputStream .read());
    // System.out.println(getPrimaryFile());
    // transferStream.setFileName("mmm");
    // transferStream.setContentType("text/plain");
    // transferStream.setContentLength(5);
    ISCSDocumentCheckinResponse result =
    api.checkinFileStream(getSCSContext(), getActiveContent(),
    transferStream);
    //getSCSContext().setCrendentials();
    // The message from the content server , if any
    String message = result.getMessage();
    // Print a status message to the console
    print("Checked in the file [" + getPrimaryFile() +
    "] with content id " + getContentId() + ". Message:" +
    message);
    } catch (FileNotFoundException exp) {
    throw new CommandException(exp);
    } catch (IOException exp) {
    throw new CommandException(exp);
    } catch (Exception exp) {
    exp.printStackTrace();
    * This creates a new SCSCheckinFlags object which can be used to define the check-in properties.
    * @return new SCSCheckinFlags object
    * @throws RemoteException
    * @throws com.stellent.cis.client.command.CommandException
    protected ISCSCheckinFlags getCheckinFlags() throws RemoteException,
    CommandException {
    log.fine("Entering getCheckinFlags");
    ISCSCheckinFlags checkinFlags =
    (ISCSCheckinFlags)getClient().getUCPMAPI().createObject(ISCSCheckinFlags.class);
    // Specify that the file should be copied, and not be deleted after the check in.
    checkinFlags.setFileCopy(true);
    // Specify this to true if this is a workflow step checkin.
    checkinFlags.setFinished(false);
    return checkinFlags;
    * Creates a new SCSContent object where all the document specific properties and meta-data values can be set for the
    * check-in process.
    * @return new SCSContent object with the properties set
    * @throws RemoteException
    * @throws com.stellent.cis.client.command.CommandException
    protected ISCSContent getActiveContent() throws RemoteException,
    CommandException {
    // Create a new content object for the executing context
    ISCSContent activeContent =
    (ISCSContent)getClient().getUCPMAPI().createObject(ISCSContent.class);
    ISCSContentID contentID =
    (ISCSContentID)getClient().getUCPMAPI().createObject(ISCSContentID.class);
    contentID.setContentID(getContentId());
    activeContent.setContentID(contentID);
    // Set the Title of the document
    activeContent.setTitle(getTitle());
    // set the type of the document
    activeContent.setType(getType());
    // set the security group of the document
    activeContent.setSecurityGroup(getSecurityGroup());
    return activeContent;
    * Override the initialize method to read in more document specific values from the command line.
    protected void initialize(String[] args) {
    log.fine("Entering initialize");
    super.initialize(args);
    // Provide a default value for the fields so that we don't have to enter it always. ;-)
    // Date is random enough for us.
    Date now = new Date();
    setPrimaryFile(readArgsAsString("-file", args, null));
    setTitle(readArgsAsString("-title", args,
    "Title By SDK " + now.getTime()));
    setContentId(readArgsAsString("-contentid", args,
    now.getTime() + "Content-Id-SDK"));
    setType(readArgsAsString("-type", args, "ADACCT"));
    setSecurityGroup(readArgsAsString("-securitygroup", args, "Public"));
    // Getters and setters for the variables
    public String getPrimaryFile() {
    primaryFile = "D:\\w.txt";
    return primaryFile;
    public void setPrimaryFile(String primaryFile) {
    this.primaryFile = primaryFile;
    public String getContentId() {
    return contentId;
    public void setContentId(String contentId) {
    this.contentId = contentId;
    public String getTitle() {
    return title;
    public void setTitle(String title) {
    this.title = title;
    public String getSecurityGroup() {
    return securityGroup;
    public void setSecurityGroup(String securityGroup) {
    this.securityGroup = securityGroup;
    public String getType() {
    return type;
    public void setType(String type) {
    this.type = type;
    Edited by: user7326470 on Oct 17, 2009 2:52 AM

    <?xml version="1.0" encoding="windows-1256" ?>
    <config>
    <adapter default="true" name="myadapter" type="scs">
    <config>
    <property name="type">web</property>
    <property name="vaultType">web</property>
    <property
    name="host">http://192.168.0.104/MIC_ECM/idcplg</propert
    y>
    <property name="port">4444</property>
    <property
    name="contentServerAdminID">sysadmin</property>
    <property
    name="contentServerAdminPassword">idc</property>
    <property
    name="eventPollingEnabled">true</property>
    <property
    name="persistentConnection">true</property>
    <property name="cacheEnabled">true</property>
    <property
    name="connectionTimeout">9999999999999999999999999999999
    9999999999999999999999999999999999999999999999999999</pr
    operty>
    <property
    name="contentServerMappedVault"></property>
    <property name="appserverMappedVault"></property>
    </config>
    <beans template="classpath:/META-
    INF/resources/adapter/adapter-services-scs.jxml"/>
    </adapter>
    <adapter name="checkin" type="scs">
    <config>
    <property name="type">web</property>
    <property
    name="host">http://192.168.0.104/MIC_ECM/idcplg</propert
    y>
    <property name="port">4444</property>
    <property
    name="contentServerAdminID">sysadmin</property>
    <property
    name="contentServerAdminPassword">idc</property>
    <property
    name="eventPollingEnabled">true</property>
    <property
    name="persistentConnection">false</property>
    <property name="cacheEnabled">true</property>
    <property
    name="connectionTimeout">9999999999999999999999999999</p
    roperty>
    <property
    name="contentServerMappedVault"></property>
    <property name="appserverMappedVault"></property>
    </config>
    <beans template="classpath:/META-
    INF/resources/adapter/adapter-services-scs.jxml"/>
    </adapter>
    </config>
    the JDeveloper exception is as foolows
    [2009-10-17 11:24:10,749] [SCS EventPoller [myadapter]]
    WARN
    (com.stellent.cis.server.api.scs.event.impl.SCSEventPoll
    er) - No password credentials supplied for background
    polling thread but adapter config 'myadapter' is set to
    type web which requires authentication will attempt to
    poll with no credentials
    [2009-10-17 11:24:10,811] [SCS EventPoller [myadapter]]
    WARN
    (com.stellent.cis.server.api.scs.event.impl.SCSEventPoll
    er) - Error in content server event poller
    com.stellent.cis.client.command.CommandException: Error
    reading the response from the Content Server: 401
         at
    com.stellent.cis.server.api.scs.impl.SCSCommand.executeR
    equest(SCSCommand.java:338)
         at
    com.stellent.cis.server.api.scs.impl.SCSCommand.execute
    (SCSCommand.java:222)
         at
    com.stellent.cis.client.command.impl.services.CommandExe
    cutorService.executeCommand
    (CommandExecutorService.java:57)
         at
    com.stellent.cis.client.command.impl.CommandFacade.execu
    teCommand(CommandFacade.java:158)
         at
    com.stellent.cis.client.command.impl.BaseCommandAPI.invo
    keCommand(BaseCommandAPI.java:84)
         at
    com.stellent.cis.client.api.scs.administrative.query.imp
    l.SCSAdministrativeQueryAPI.queryDocumentHistory
    (SCSAdministrativeQueryAPI.java:76)
         at
    com.stellent.cis.server.api.scs.event.impl.SCSEventPolle
    r$SCSFileCachePollingThread.run(SCSEventPoller.java:275)
    Caused by:
    com.stellent.cis.server.api.scs.request.SCSRequestExcept
    ion: Error reading the response from the Content Server:
    401
         at
    com.stellent.cis.server.api.scs.request.impl.SCSRequestP
    rocessor.sendRequest(SCSRequestProcessor.java:156)
         at
    com.stellent.cis.server.api.scs.request.impl.SCSRequestP
    rocessor.processRequest(SCSRequestProcessor.java:112)
         at
    com.stellent.cis.server.api.scs.request.impl.SCSRequestF
    ilterChain.doRequestFilter
    (SCSRequestFilterChain.java:61)
         at
    com.stellent.cis.server.api.scs.request.stream.SCSOptimi
    zedPublishFilter.handleRequest
    (SCSOptimizedPublishFilter.java:128)
         at
    com.stellent.cis.server.api.scs.request.impl.SCSRequestF
    ilterChain.doRequestFilter
    (SCSRequestFilterChain.java:58)
         at
    com.stellent.cis.server.api.scs.request.stream.SCSOptimi
    zedRetrieveFilter.handleRequest
    (SCSOptimizedRetrieveFilter.java:250)
         at
    com.stellent.cis.server.api.scs.request.impl.SCSRequestF
    ilterChain.doRequestFilter
    (SCSRequestFilterChain.java:58)
         at
    com.stellent.cis.server.api.scs.request.rewrite.SCSRewri
    teURLFilter.handleRequest(SCSRewriteURLFilter.java:140)
         at
    com.stellent.cis.server.api.scs.request.impl.SCSRequestF
    ilterChain.doRequestFilter
    (SCSRequestFilterChain.java:58)
         at
    com.stellent.cis.server.api.scs.request.cache.impl.SCSSe
    rviceCacheFilter.handleRequest
    (SCSServiceCacheFilter.java:112)
         at
    com.stellent.cis.server.api.scs.request.impl.SCSRequestF
    ilterChain.doRequestFilter
    (SCSRequestFilterChain.java:58)
         at
    com.stellent.cis.server.api.scs.request.impl.SCSRequestE
    xecutorProxy.execute(SCSRequestExecutorProxy.java:105)
         at
    com.stellent.cis.server.api.scs.impl.SCSCommand.executeV
    iaProxy(SCSCommand.java:353)
         at
    com.stellent.cis.server.api.scs.impl.SCSCommand.executeR
    equest(SCSCommand.java:335)
         ... 6 more
    Caused by:
    com.stellent.cis.common.exception.HttpException: 401
         at
    com.stellent.cis.server.api.scs.protocol.impl.httpclient
    .HdaViaHttpProtocol.writeMessage
    (HdaViaHttpProtocol.java:171)
         at
    com.stellent.cis.server.api.scs.request.impl.SCSRequestP
    rocessor.sendRequest(SCSRequestProcessor.java:148)
         ... 19 more
    [2009-10-17 11:29:10,847] [SCS EventPoller [myadapter]]
    WARN
    (com.stellent.cis.server.api.scs.event.impl.SCSEventPoll
    er) - Error in content server event poller
    com.stellent.cis.client.command.CommandException: Error
    reading the response from the Content Server: 401
         at
    com.stellent.cis.server.api.scs.impl.SCSCommand.executeR
    equest(SCSCommand.java:338)
         at
    com.stellent.cis.server.api.scs.impl.SCSCommand.execute
    (SCSCommand.java:222)
         at
    com.stellent.cis.client.command.impl.services.CommandExe
    cutorService.executeCommand
    (CommandExecutorService.java:57)
         at
    com.stellent.cis.client.command.impl.CommandFacade.execu
    teCommand(CommandFacade.java:158)
         at
    com.stellent.cis.client.command.impl.BaseCommandAPI.invo
    keCommand(BaseCommandAPI.java:84)
         at
    com.stellent.cis.client.api.scs.administrative.query.imp
    l.SCSAdministrativeQueryAPI.queryDocumentHistory
    (SCSAdministrativeQueryAPI.java:76)
         at
    com.stellent.cis.server.api.scs.event.impl.SCSEventPolle
    r$SCSFileCachePollingThread.run(SCSEventPoller.java:275)
    Caused by:
    com.stellent.cis.server.api.scs.request.SCSRequestExcept
    ion: Error reading the response from the Content Server:
    401
         at
    com.stellent.cis.server.api.scs.request.impl.SCSRequestP
    rocessor.sendRequest(SCSRequestProcessor.java:156)
         at
    com.stellent.cis.server.api.scs.request.impl.SCSRequestP
    rocessor.processRequest(SCSRequestProcessor.java:112)
         at
    com.stellent.cis.server.api.scs.request.impl.SCSRequestF
    ilterChain.doRequestFilter
    (SCSRequestFilterChain.java:61)
         at
    com.stellent.cis.server.api.scs.request.stream.SCSOptimi
    zedPublishFilter.handleRequest
    (SCSOptimizedPublishFilter.java:128)
         at
    com.stellent.cis.server.api.scs.request.impl.SCSRequestF
    ilterChain.doRequestFilter
    (SCSRequestFilterChain.java:58)
         at
    com.stellent.cis.server.api.scs.request.stream.SCSOptimi
    zedRetrieveFilter.handleRequest
    (SCSOptimizedRetrieveFilter.java:250)
         at
    com.stellent.cis.server.api.scs.request.impl.SCSRequestF
    ilterChain.doRequestFilter
    (SCSRequestFilterChain.java:58)
         at
    com.stellent.cis.server.api.scs.request.rewrite.SCSRewri
    teURLFilter.handleRequest(SCSRewriteURLFilter.java:140)
         at
    com.stellent.cis.server.api.scs.request.impl.SCSRequestF
    ilterChain.doRequestFilter
    (SCSRequestFilterChain.java:58)
         at
    com.stellent.cis.server.api.scs.request.cache.impl.SCSSe
    rviceCacheFilter.handleRequest
    (SCSServiceCacheFilter.java:112)
         at
    com.stellent.cis.server.api.scs.request.impl.SCSRequestF
    ilterChain.doRequestFilter
    (SCSRequestFilterChain.java:58)
         at
    com.stellent.cis.server.api.scs.request.impl.SCSRequestE
    xecutorProxy.execute(SCSRequestExecutorProxy.java:105)
         at
    com.stellent.cis.server.api.scs.impl.SCSCommand.executeV
    iaProxy(SCSCommand.java:353)
         at
    com.stellent.cis.server.api.scs.impl.SCSCommand.executeR
    equest(SCSCommand.java:335)
         ... 6 more
    Caused by:
    com.stellent.cis.common.exception.HttpException: 401
         at
    com.stellent.cis.server.api.scs.protocol.impl.httpclient
    .HdaViaHttpProtocol.writeMessage
    (HdaViaHttpProtocol.java:171)
         at
    com.stellent.cis.server.api.scs.request.impl.SCSRequestP
    rocessor.sendRequest(SCSRequestProcessor.java:148)
         ... 19 more
    com.stellent.cis.client.command.CommandException: Error
    reading the response from the Content Server: 500
         at
    com.stellent.cis.server.api.scs.impl.SCSCommand.executeR
    equest(SCSCommand.java:338)
         at
    com.stellent.cis.server.api.scs.impl.SCSCommand.execute
    (SCSCommand.java:222)
         at
    com.stellent.cis.client.command.impl.services.CommandExe
    cutorService.executeCommand
    (CommandExecutorService.java:57)
         at
    com.stellent.cis.client.command.impl.CommandFacade.execu
    teCommand(CommandFacade.java:158)
         at
    com.stellent.cis.client.command.impl.BaseCommandAPI.invo
    keCommand(BaseCommandAPI.java:84)
         at
    com.stellent.cis.client.api.scs.document.checkin.impl.SC
    SDocumentCheckinAPI.checkinFileStream
    (SCSDocumentCheckinAPI.java:663)
         at
    com.stellent.cis.sdk.samples.checkin.CheckinFile.execute
    (CheckinFile.java:118)
         at
    com.stellent.cis.sdk.samples.checkin.CheckinFile.main
    (CheckinFile.java:71)
    Caused by:
    com.stellent.cis.server.api.scs.request.SCSRequestExcept
    ion: Error reading the response from the Content Server:
    500
         at
    com.stellent.cis.server.api.scs.request.impl.SCSRequestP
    rocessor.sendRequest(SCSRequestProcessor.java:156)
         at
    com.stellent.cis.server.api.scs.request.impl.SCSRequestP
    rocessor.processRequest(SCSRequestProcessor.java:112)
         at
    com.stellent.cis.server.api.scs.request.impl.SCSRequestF
    ilterChain.doRequestFilter
    (SCSRequestFilterChain.java:61)
         at
    com.stellent.cis.server.api.scs.request.stream.SCSOptimi
    zedPublishFilter.handleRequest
    (SCSOptimizedPublishFilter.java:128)
         at
    com.stellent.cis.server.api.scs.request.impl.SCSRequestF
    ilterChain.doRequestFilter
    (SCSRequestFilterChain.java:58)
         at
    com.stellent.cis.server.api.scs.request.stream.SCSOptimi
    zedRetrieveFilter.handleRequest
    (SCSOptimizedRetrieveFilter.java:250)
         at
    com.stellent.cis.server.api.scs.request.impl.SCSRequestF
    ilterChain.doRequestFilter
    (SCSRequestFilterChain.java:58)
         at
    com.stellent.cis.server.api.scs.request.rewrite.SCSRewri
    teURLFilter.handleRequest(SCSRewriteURLFilter.java:140)
         at
    com.stellent.cis.server.api.scs.request.impl.SCSRequestF
    ilterChain.doRequestFilter
    (SCSRequestFilterChain.java:58)
         at
    com.stellent.cis.server.api.scs.request.cache.impl.SCSSe
    rviceCacheFilter.handleRequest
    (SCSServiceCacheFilter.java:112)
         at
    com.stellent.cis.server.api.scs.request.impl.SCSRequestF
    ilterChain.doRequestFilter
    (SCSRequestFilterChain.java:58)
         at
    com.stellent.cis.server.api.scs.request.impl.SCSRequestE
    xecutorProxy.execute(SCSRequestExecutorProxy.java:105)
         at
    com.stellent.cis.server.api.scs.impl.SCSCommand.executeV
    iaProxy(SCSCommand.java:353)
         at
    com.stellent.cis.server.api.scs.impl.SCSCommand.executeR
    equest(SCSCommand.java:335)
         ... 7 more
    Caused by:
    com.stellent.cis.common.exception.HttpException: 500
         at
    com.stellent.cis.server.api.scs.protocol.impl.httpclient
    .HdaViaHttpProtocol.writeMessage
    (HdaViaHttpProtocol.java:171)
         at
    com.stellent.cis.server.api.scs.request.impl.SCSRequestP
    rocessor.sendRequest(SCSRequestProcessor.java:148)
         ... 20 more
    Process exited with exit code 0.
    the server exception in log of content server is as
    follows
    Event generated by user 'anonymous' at host
    '192.168.0.104'. Stream terminated before being able to
    read HTTP protocol line. Stream terminated before being
    able to read HTTP protocol line. [ Details ]
    An error has occurred. The stack trace below shows more
    information.
    !csUserEventMessage,anonymous,192.168.0.104!$!
    syStreamTerminatedBeforeProtocol!
    syStreamTerminatedBeforeProtocol
    intradoc.common.ServiceException: !
    syStreamTerminatedBeforeProtocol
         at
    intradoc.server.ServiceRequestImplementor.doRequest
    (ServiceRequestImplementor.java:628)
         at intradoc.server.Service.doRequest
    (Service.java:1709)
         at
    intradoc.server.ServiceManager.processCommand
    (ServiceManager.java:357)
         at intradoc.server.IdcServerThread.run
    (IdcServerThread.java:195)
    Caused by: java.io.IOException: !
    syStreamTerminatedBeforeProtocol
         at
    intradoc.serialize.DataBinderSerializer.readStreamLineBy
    teEx(DataBinderSerializer.java:1588)
         at
    intradoc.serialize.DataBinderSerializer.readStreamLineEx
    (DataBinderSerializer.java:1556)
         at
    intradoc.serialize.DataBinderSerializer.readLineEx
    (DataBinderSerializer.java:1528)
         at
    intradoc.serialize.DataBinderSerializer.parseForData
    (DataBinderSerializer.java:1336)
         at
    intradoc.serialize.DataBinderSerializer.parseMultiConten
    t(DataBinderSerializer.java:1283)
         at
    intradoc.serialize.DataBinderSerializer.continueParse
    (DataBinderSerializer.java:1244)
         at
    intradoc.data.DataSerializeUtils.continueParse
    (DataSerializeUtils.java:138)
         at intradoc.server.Service.continueParse
    (Service.java:415)
         at
    intradoc.server.ServiceRequestImplementor.doRequest
    (ServiceRequestImplementor.java:620)
         ... 3 more

  • Content Server 4 help

    I have been charged with the task up setting up the Content Server 4 for the company I work for so we can try it out during the test period to see if it is something we want to purchase. There is a week left of our pre-release trial and I'm completely lost!
    I've managed to get all three of the status checks to give me all green check marks, but I really have no idea where to go next to even use the program. I haven't been able to log in to the admin console either. I had to contact support to get the build.xml file needed to build the UploadTest-1_1.jar file that the user guide said was included, but wasn't. I don't know how to work that either. The command that support gave me just results in errors. I know very little about Java.
    The user guide seems to give a good explanation of how the program works, but in my opinion doesn't explain how to actually use the program (some of the setup was a bit confusing as well). I don't know where to start to make it do what it is supposed to do.
    If anyone has any hints for me I would greatly appreciate them. Thanks!
    MySQL 5.0.67
    MySQL Connector Java 5.1.6
    Apache Tomcat 6.0.18
    JDK 6u3
    Windows XP sp3

    Hi everyone...
    I'm just yelling all the day to this program in order to make it work...
    I succesfully get the Package message work but i cannot make the GBLink working... i always get the "E_ADEPT_URL_SIGNATURE_ERR http://dev1:8080/fulfillment/URLLink.acsm GBLINK_AUTH_SIGNATURE_NOMATCH" error
    I am writing in C# and this is the code i use to make the GBLINK
            public static string CreateHMAC(string xmlElement) {
                string key = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"; //--THIS IS THE shared secret key you can find in the admin console for the distributor
                HMACSHA1 myhmacsha1 = new HMACSHA1(Convert.FromBase64String(key));
                byte[] hashValue = myhmacsha1.ComputeHash(Encoding.UTF8.GetBytes(xmlElement));
                myhmacsha1.Clear();
                return ByteToString(hashValue);
            public static string ByteToString(byte[] buff) {
                string sbinary = "";
                for (int i = 0; i < buff.Length; i++) {
                    sbinary += buff[i].ToString("X2"); // hex format
                return (sbinary.ToLower());
                       string rightsRequested = "";
                        string orderSource = "XXXXX"; //--This is the distributor name
                        string url =
                            "http://dev1:8080/fulfillment/URLLink.acsm?action=enterorder" +
                            "&ordersource=" + HttpUtility.UrlEncode(orderSource) +
                            "&orderid=1&resid=" + HttpUtility.UrlEncode(resourceID) +
                            "&rights=" + HttpUtility.UrlEncode(rightsRequested) +
                            "&gbauthdate=" + HttpUtility.UrlEncode(DateTime.Now.ToString("MM/dd/YYYY HH\\:mm UTC")) +
                            "&dateval=" + HttpUtility.UrlEncode(DateTime.Now.ToString("MM/dd/YYYY HH\\:mm UTC")) +
                            "&gblver=" + HttpUtility.UrlEncode("3") +
                            "&auth=";
                   string hmac = XmlUtil.CreateHMAC(url);
    ANY help will be grateful appreciated!

  • Content Server error

    Hi All,
    I am trying to write a Java utility that will create a document using Content Server HTTP API in a repository with security turned on. I use SAP SSF classes to calculate the secKey value for my request, but everytime I get HTTP 401 error and the Content server log contains following error:
    Security SsfVerify failed rc=12, lasterror=18, decoding error for, PSE=
    ?\C:\Program Files\SAP\Content Server\Security\ZT1.pse,"
    My algorithm is following: first I calculate the MD5 hash of the parameters:
    byte[] digest = null;
    MessageDigest md = MessageDigest.getInstance("MD5");
    md.update(param.getBytes());
    digest = md.digest();
    Then I sign it using SAP SSF classes:
    ByteArrayInputStream bais = new ByteArrayInputStream(digest);
    // create object of ssf data
    ISsfData data = null;
    try {
        data = new SsfDataPKCS7(bais);
        KeyStore keystore = KeyStore.getInstance("PKCS12");
        keystore.load(new FileInputStream("c:\\work\\PKI\\CS_NW1.p12"), "pwd".toCharArray());               
        SsfProfileKeyStore profile = new SsfProfileKeyStore(keystore, "cs_nw1", "pwd");
        boolean res = data.sign(profile);
        if (!res) {
            System.out.println("Creation of signature failed");
        } else {
         ByteArrayOutputStream baos = new ByteArrayOutputStream();
         data.writeTo(baos);
         result = Base64.encodeBase64URLSafeString(baos.toByteArray());
    } catch (Exception e) {
       e.printStackTrace();
    Is anyone here who has experience with the Content Server HTTP API in combination with digital signatures and could help me with my problem?
    Many thanks in advance!
    Best regards,
    Tomas

    Hi Tomas,
    I tried to implement the interface with C# and got same error as you mentioned above (Security SsfVerify failed rc=12, lasterror=18, decoding error for).
    I'm not sure if my problem comes from the certificate which I created using makecert.exe or if I did somethime wrong signing the URL. How did you create your certificate?
    Maybe you can see a major fault in my code. I tried it that way:
    byte
    [] byteArray = File.ReadAllBytes(@"C:\_xbound_ocf\Development\Dev\Binaries\Release\ENUtxt.pdf");
    string docId = Guid.NewGuid().ToString().Replace("-", "").ToUpper();
    string expiration = DateTime.Now.Add(new TimeSpan(2, 0, 0)).ToString("yyyyMMddHHmmss");
    string accessMode = "c";
    string parameterToBeSigned = ReplaceCharacter(_ContRep.Text) + ReplaceCharacter(_CompID.Text) + ReplaceCharacter(docId) + ReplaceCharacter(_DocProt.Text) +
    ReplaceCharacter(accessMode) + ReplaceCharacter(_AuthId.Text) + ReplaceCharacter(expiration);
    string path = @"C:\_xbound_ocf\Development\Dev\ProcessDirector\ArchiveLinkTest\ArchiveLinkTest\certs\DSAWithSHA1\MyUserCert.pfx";
    X509Certificate2 certificate = new X509Certificate2(path, "alba&1");
    DSACryptoServiceProvider provider = ( DSACryptoServiceProvider)certificate.PrivateKey;
    System.Text.ASCIIEncoding encoding = new System.Text.ASCIIEncoding();
    ASCIIEncoding encoding2 = new System.Text.ASCIIEncoding();
    byte[] data = encoding2.GetBytes(parameterToBeSigned);
    SHA1Managed sha1 = new SHA1Managed();
    byte[] hash = sha1.ComputeHash(data);
    byte[] signed = provider.CreateSignature(hash);
    string secKey = Convert.ToBase64String(signed);
    string url = _URL.Text + "?create" +
         "&contRep=" + ReplaceCharacter(_ContRep.Text) +
          "&compId=" + ReplaceCharacter(_CompID.Text) +
          "&docId=" + ReplaceCharacter(docId) +
          "&pVersion=" + ReplaceCharacter(_Version.Text) +
          "&Content-Length=" + byteArray.Length.ToString() +
          "&docProt=" + ReplaceCharacter(_DocProt.Text) +
          "&accessMode=" + ReplaceCharacter(accessMode) +
          "&authId=" + ReplaceCharacter(_AuthId.Text) +
          "&expiration=" + ReplaceCharacter(expiration) +
          "&secKey=" + ReplaceCharacter(secKey);
    ReplaceCharacter is a function which replaces the invalid characters for url.
    Best regards
    Anja

  • UCM Content Server Service Error.

    Hi All,
    I'm querying the Content server using the RIDC API as follows:
    setClientObject();
    dataBinder.putLocal("IdcService", "GET_SEARCH_RESULTS");
    dataBinder.putLocal("QueryText","dInDate >= `01/03/10 12:00 AM`");
    dataBinder.putLocal("ResultCount", "1000");
    ServiceResponse response =
    m_client.sendRequest(m_userContext, dataBinder);
    responseDatabinder = response.getResponseAsBinder();
    DataBinder responseData = getSearchResultsServiceCS(queryText);
    int Size= responseData.getResultSet("SearchResults").getRows().size();
    but its throwing an error-stack trace as follows:
    oracle.stellent.ridc.protocol.ServiceException: Unable to retrieve search results. Parsing error at character 9 in query: "( dInDate+%3E%3D+%6001%2F03%2F10+12%3A00+AM%60 )".
         at oracle.stellent.ridc.protocol.ServiceResponse.getResponseAsBinder(ServiceResponse.java:125)
         at oracle.stellent.ridc.protocol.ServiceResponse.getResponseAsBinder(ServiceResponse.java:101)
    I tried to Encode the date using the following line of code :String queryText = URLEncoder.encode("dInDate >= `01/03/10 12:00 AM`",UTF_8); ,but this is also not working ..
    Kindly help me out resolve this asap.
    TIA....

    Did you try this
    dataBinder.putLocal("QueryText","dInDate *\*>= `01/03/10 12:00 AM`");
    Character ">" is not parsed correctly I think.

  • Asking about Content Server web service

                     I have studied Adobe Content Server 4 in evaluation version. I already have finished to setup ACS4 and it
                     can work with sample shop. But now, my company already have own shop for e-commerce purpose. In order to
                     integrate my shop to ACS4, I must use web service to get some information from ACS4 for inventory system.
                     So I have read document many times but still not clear yet. Now I investigate DRM work flow from
                     "Web Service API Inspector" that provide by ACS4. I write own php script for listing all ebook.
                     The following is xml request for listing all book in ACS4 that I copied from "Web Service API Inspector".
                                        http://58.97.41.195:8080/admin/ManageResourceItem
                                        <request action="get" auth="builtin" xmlns="http://ns.adobe.com/adept">
                                          <nonce>RQ4nngAAAAI=</nonce>
                                          <expiration>2010-06-17T09:07:22-00:00</expiration>
                                          <hmac>DP502XxihvqWMDwCezAAVdJBkrA=</hmac>
                                        </request>
                     In the above request I'm very confuse about nonce and hmac value.
                                - What is none created from ? And do you have any sample code to create nonce value
                                - In this case, I understand that hmac is created from the following php function
                                        $request =    '<request action="get" auth="builtin" xmlns="http://ns.adobe.com/adept">' .
                                                           '<nonce>RQ4nngAAAAI=</nonce>' .
                                                           '<expiration>2010-06-17T09:07:22-00:00</expiration>' .
                                                           '</request>';
                                        $key = 'xxxxx' ; // where xxxxx is password for logging in to the ACS4 admin console
                                        hash_hmac('sha1', $request, $key);
                     Am I right ?

    Nonce is a contraction of  "Number used only once" and is a standard  way to prevent message replay.  Nonces must be unique until the time specified in expiration.  If the nonce is not unique you will get an E_ADEPT_REPLAY error message.
    The signature element is the hmac of a particular infoset serialization of the xml.  For examples of this in Java see the sample code for UploadTest et al. If you ask support, they can provide sample serialization in php.  Hashing the raw bytes of the message as you did is not correct.
    An alternative for your development is to turn off authentication by adding the following line into your admin config file:
    com.adobe.adept.persist.skipAuthentication=true
    The signature element will still be required, but it doesn't matter what the value is other than it being valid base64 encoding, so you could just use aaaa for example.
    However if you do turn off authentication then it is up to you make sure the admin service is secure (by restricting access through vpn/firewall rules or whatever other means you choose)

Maybe you are looking for

  • Dual monitor problem...

    I have had my 13 inch macbook connected to my TV with no problems. Recently I unhooked the laptop to travel and when i connected it back to my TV, it only registers as having dual displays. Before I disconnected it, the TV was the only display shown

  • How do I change the order of Bookmarks in Firefox Mobile?

    For Firefox Mobile (v4), I can't figure out how to change the order of bookmarks. What am I missing?

  • Dreamweaver 8 Freezing - insert div

    Hi. I just installed Dreamweaver 8, and upgraded to 8.02 with the download upgrade. I am on a Mac G4, using Tiger. I am using Dave Powers Foundation PHP for Dreamweaver 8 and am at the point of creating a new page. Using the "insert div" icon I was a

  • Installing 3rd party application in Portal

    Hi, We are running on NW Portal 7.0. Presnetly I have one req to install one Java application in Portal. I got a war file from the developer. now the problem here is the developer used mysql database to do the coding. Now we want to use SQL server200

  • Replacement adapter for ipad

    Recently my original power adapter quit charging.  I tried another and it didn't charge my ipad either.  Thinking it may be something stupid I headed to Walmart and bought another Apple adapter.  It is charging very slowly (like 40% on about 8 hours)