Skip navigation
Currently Being Moderated

Content Server 4 help

Oct 10, 2008 11:26 AM

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
 
Replies
  • Currently Being Moderated
    Oct 16, 2008 8:48 AM   in reply to (Brandon_Holly)
    I totally relate to your problems since they are all exactly the same ones I have encountered and continue to encounter.  Installation was much more challenging than it need to be and after I was done I was left thinking, "How do I use this?"

    Your assessment of the user's guide is kind.  I find it badly organized and outright misleading.  The specific references to deliverables (the conf files and the uploader jar) which are absolutely NOT delivered in the current bundle are an outrageous time-waster.  Why not just take two seconds and bundle them into the distributed zip?

    Key parts of the installation are broken up into distant sections of the guide, like the license info that needs to be included in the conf files, which are "covered" much earlier in the document.  The status checks will absolutely fail if you only follow instructions up to the point they tell you to run them.

    You couldn't log into the admin console? No surprise. That's because the default password, park345, is not supplied in the user manual or anywhere else. I had to ask.  That was another lost 24 hours.  Frankly it doesn't matter, though, because there will be nothing in the admin console until you manage to get some books in there.  You thought maybe you could add PDFs that way? Me too.  It would make sense wouldn't it?  Sorry, but no.

    The jar file that Adobe refers to, but does not supply, supposedly allows you to do that, though I have not gotten it to work.

    The syntax for it, since Adobe does not bother to provide any full, real world examples, is:
    java -jar UploadTest-1_1.jar http://yourdomain/packaging/Package /localpath/your.pdf.

    You can pass flags to indicate the presence of things like an XML file that controls the permissions or a thumbnail, e.g.
    java -jar UploadTest-1_1.jar http://yourdomain/packaging/Package /localpath/raw.pdf -xml -jpg

    You don't tell it the name of the XML or jpg.  You are supposed to use identical filenames and locations as the PDF or Epub.

    Even though I figured all that out I still get an error when I run the thing:
    There was an error with the Package Request


    It means nothing to me and the logs don't help.  Maybe someone reading this can kindly tell me what to do since the manual leaves me nowhere and I am still waiting for email support on this issue.
     
    |
    Mark as:
  • Currently Being Moderated
    Oct 16, 2008 12:07 PM   in reply to (Brandon_Holly)
    Wow. It actually worked. Thanks for the tip.

    So not only do they NOT supply a crucial piece of helper software that gets a large amount of attention in the manual, they actually neglect to include a critical part of that software's instructions. There is no mention of the -pass flag at all. I'm not even surprised anymore.

    And couldn't they have done just a little bit of error catching so that it says, "Needs password" or some such?

    So, on to the store portion of the system. I am sure I will have as little luck as you but if I make any progress I will post it here.
     
    |
    Mark as:
  • Currently Being Moderated
    Oct 20, 2008 8:44 AM   in reply to (Brandon_Holly)
    Follow Up: As I predicted the store did not function and I got EXACTLY the same error message as you.

    Guess why. Because the instructions were wrong, again.

    I finally heard back from support about this problem. There is a line in the fulfillment config file that should look like this:
    com.adobe.adept.serviceURL=http://yourdomain.com/fulfillment

    Instead the user's guide (section 4.5.5.) shows it this way:
    com.adobe.adept.serviceURL = http://.../fulfillment

    Note the spaces between the equals sign. These are not allowed. Section 4.5.6 has an identical mistyped line for the packaging server, though this had no apparent effect. I wonder if the line is even necessary for the packaging server. You have to wonder why the status check worked, don't you?

    Once I corrected this line I had a fully functioning ACS4 system.
     
    |
    Mark as:
  • Currently Being Moderated
    Oct 23, 2008 8:18 AM   in reply to (Brandon_Holly)
    Hi,<br /><br />I like Brandon, have also been tasked with setting up a test environment for acs4.  Using the user manual as a guide, I have run into numerous obstacles and am having difficulties in getting this up and running.<br /><br />I have amended the config.xml page for the sample store so that it contains details got from the Admin Console e.g. the id & shared secret.  when i click on download in the sample store, i too get the following error message:<br /> <error xmlns="http://ns.adobe.com/adept" data="E_ADEPT_URL_SIGNATURE_ERR http://covmphpdev:8080/fulfillment/URLLink.acsm GBLINK_AUTH_SIGNATURE_NOMATCH" /> <br /><br />Can I ask you both......<br />1. How you got the UploadTest-1_1.zip working? <br />2. Where do you run the command: java -jar UploadTest-1_1.jar http://yourdomain/packaging/Package /localpath/raw.pdf -pass yourpassword -xml -jpg  , is it in cygwin tool? <br />3. How do you get a list of books/items displaying in the Admin Console?<br /><br />Any help would be great.<br /><br />thanks,<br /><br />karnesh
     
    |
    Mark as:
  • Currently Being Moderated
    Oct 24, 2008 4:41 AM   in reply to (Brandon_Holly)
    Hi Brandon,

    Thanks for the information, I have emailed Adobe for the build.xml file so that I can make use of the UploadTest-1_1.zip tool and finally get the sample store working.

    It took us a while also to indentify that spaces in config files caused problems.

    Again thanks for updating this forum, is proving to be a valuable source of information for us here in the UK.
     
    |
    Mark as:
  • Currently Being Moderated
    Oct 30, 2008 2:02 AM   in reply to (Brandon_Holly)
    well guys thanks for the useful information .. but anyone try to re-code GBLink generation in C# i need some help with that
     
    |
    Mark as:
  • Currently Being Moderated
    Nov 3, 2008 4:16 AM   in reply to (Brandon_Holly)
    Brandon,

    Would you be willing to post or make your .NET fulfilment link code available?

    You say "apparently" using GBLink was the old ACS3 way of generating links (and I'd hate to use an ActiveX) but where did that information come from? I'm at the distributor end of things and it's hard to get technical details on best practices, just the "most common" architectre in the documentation. However nowhere can I find details of alternative approaches.

    Thanks,

    Steve.
     
    |
    Mark as:
  • Currently Being Moderated
    Nov 3, 2008 9:23 AM   in reply to (Brandon_Holly)
    You don't fancy sharing your code then? No pressure if you don't want to (I'd check it all anyway) but it would certainly short cut things for us here.

    In any event thanks for the reply.

    Steve
     
    |
    Mark as:
  • Currently Being Moderated
    Nov 4, 2008 12:11 AM   in reply to (Brandon_Holly)
    Steve,

    I'm using .NET too to generate the GBLink... but it's not quite easy as in PHP code.. anyway I've no luck to make it work but anyway I'm pasting my code maybe it would help you to start implementing yours..

    first this is the function that decode the shared secret of the distributor...I've notice that there's extra char of the result of the decoding in .NET code than the result generated in PHP code so i made an extra code to remove this char.. you can remove this part to test it.. i've tested both ways but no luck :(
    public static string base64Decode(string data)
    {
    try
    {
    System.Text.UTF8Encoding encoder = new System.Text.UTF8Encoding();
    System.Text.Decoder utf8Decode = encoder.GetDecoder();

    byte[] todecode_byte = Convert.FromBase64String(data);
    int charCount = utf8Decode.GetCharCount(todecode_byte, 0, todecode_byte.Length);
    char[] decoded_char = new char[charCount];
    utf8Decode.GetChars(todecode_byte, 0, todecode_byte.Length, decoded_char, 0);

    string result = new String(decoded_char);

    // This part removes extra encoded char from the result those extra char not containing
    // in the result of the shared secret decoded in the PHP code. you can remove this part
    // and return "result" instead of return "x" and test if ot's works with you
    StringBuilder x = new StringBuilder(result);
    int removeCount = 0;
    for (int i = 0; i < result.ToCharArray().Length;i++ )
    {
    if (Convert.ToInt32(result.ToCharArray()[i]) == 65533)
    {
    x.Remove(i-removeCount, 1);
    removeCount++;
    }
    }

    return x.ToString();
    }
    catch (Exception e)
    {
    throw new Exception("Error in base64Decode" + e.Message);
    }
    }

    other two functions that signs the query string of the GBLink "all the stuff after the '?' mark except the '&auth=' itself" with the decoded key generated by the first function, the other function below convert the hashing result to HEX STRING LOWERCASE format as required:
    public static string HashingHmacSha1(string message, string key)
    {
    System.Text.UTF8Encoding encoding = new System.Text.UTF8Encoding();
    byte[] keyByte = encoding.GetBytes(key);

    HMACSHA1 hmacsha1 = new HMACSHA1(keyByte);

    byte[] messageBytes = encoding.GetBytes(message);

    byte[] hashmessage = hmacsha1.ComputeHash(messageBytes);
    return ByteToString(hashmessage);
    }

    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());
    }
    good luck & have a nice day
     
    |
    Mark as:
  • Currently Being Moderated
    Nov 4, 2008 1:12 AM   in reply to (Brandon_Holly)
    Thanks Yasser, exactly what problems and errors are you receiving. It might help debug. I'll reply with whatever I discover and a working solution (assuming I get there!).

    Steve.
     
    |
    Mark as:
  • Currently Being Moderated
    Nov 4, 2008 1:40 AM   in reply to (Brandon_Holly)
    Steve,
    I followed the PHP code and came with same decoded shared secret and the problem is when using that decoded result to hash the query string it gives me different signature than the PHP code gives me so the fulfillment service always return with signature no match error...
    in other way to figure out wheres my problem i've passed simple string as a key and the same query string for both signing functions (PHP & .NET) and give me the same signature so i think the problem in the decoding function.. hope this could help you

    Yasser
     
    |
    Mark as:
  • Currently Being Moderated
    Nov 4, 2008 11:26 PM   in reply to (Brandon_Holly)
    Thanks alot Brandon you've saved my day :) it's works this way
    Yasser
     
    |
    Mark as:
  • Currently Being Moderated
    Nov 21, 2008 4:03 AM   in reply to (Brandon_Holly)
    Hi,

    Has anyone run into issues with uploading large epub files using the uploadtest tool?

    thanks,
    karnesh
     
    |
    Mark as:
  • Currently Being Moderated
    Jan 8, 2009 4:06 AM   in reply to (Brandon_Holly)
    hi <br /><br />I am trying to set adobe content server on my pc to try it , so when i try to pack a pdf using uploadtest-1_1.jar ,I get the following error : Java.io.FileNotFoundException : http://localhost:8080/packaging/package/<br />        at sim/reflect.NativeconstructorAccessorImpl.newInstance0<native Method>...<br /><br />Any help would be great. <br /><br />thanks, <br /><br />Robert
     
    |
    Mark as:
  • Currently Being Moderated
    Jan 14, 2009 5:55 AM   in reply to (Brandon_Holly)
    Hi Robert,

    Can you tell what command you are running?

    The help guide is not very clear. The command i would run to upload a single book is:

    java -jar -Xmx1024M UploadTest-1_1.jar http://myserver:8080/packaging/Package c:/books/abook.epub -pass myACS4password

    Or for many books in a folder

    java -Xmx1024M -jar UploadTest-1_1.jar http://myserver:8080/packaging/Package c:/myBookFolder -pass myACS4password

    Hope this helps. If you contact Adobe support and ask them to send you some updated documentation. They released a quick start guide which has more info on this.

    thanks,

    karnesh
     
    |
    Mark as:
  • Currently Being Moderated
    Jan 14, 2009 6:40 AM   in reply to (Brandon_Holly)
    Dear karnesh , thanks alot for ur response<br /><br />I followed what is written in the quick start guid<br /><br />here is the command that i use:<br />C:\>java -Xmx1024M -jar UploadTest-1_1.jar http://localhost:8080/packaging/package c:\\srcbooks\lepetitprince.pdf -pass myACS4password <br /><br />the result is:<br /><br />Creating package request for: c:\\srcbooks\lepetitprince.pdf<br />Creating connection to Packaging Server: http://localhost:8080/packaging/package<br /><br />Sending Package Request<br />java.io.FileNotFoundException: http://localhost:8080/packaging/package<br />        at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)<br /><br />        at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)<br /><br />        at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)<br />        at java.lang.reflect.Constructor.newInstance(Unknown Source)<br />        at sun.net.www.protocol.http.HttpURLConnection$6.run(Unknown Source)<br />        at java.security.AccessController.doPrivileged(Native Method)<br />        at sun.net.www.protocol.http.HttpURLConnection.getChainedException(Unkno wn Source)<br />        at sun.net.www.protocol.http.HttpURLConnection.getInputStream(Unknown Source)<br />        at com.adobe.adept.upload.UploadTest.sendContent(Unknown Source)<br />        at com.adobe.adept.upload.UploadTest.<init>(Unknown Source)<br />        at com.adobe.adept.upload.UploadTest.main(Unknown Source)<br />Caused by: java.io.FileNotFoundException: http://localhost:8080/packaging/package<br />     at sun.net.www.protocol.http.HttpURLConnection.getInputStream(Unknown Source)<br />        at java.net.HttpURLConnection.getResponseCode(Unknown Source)<br />        at com.adobe.adept.upload.UploadTest.sendContent(Unknown Source)<br />        ... 2 more<br /><br />Finished!<br />Successful packages created: 0<br />Unsuccessful package attempts:1<br />Here are the files that failed to package:<br /><br />-------------------------------------<br />I am totaly new to java <br />should i have a folder "package" in the packaging folder on apache tomcat server where i deployed the packaging.war?<br />the http://localhost:8080/packaging/statuscheck/ return all true<br />I use windows xp pro with sp3 ? do I need windows server for asc4?<br /><br />Thanks in advanced<br /><br />Robert
     
    |
    Mark as:
  • Currently Being Moderated
    Jan 14, 2009 9:23 AM   in reply to (Brandon_Holly)
    Hi Robert,

    I created a folder called "Package" in C:\Program Files\Apache Software Foundation\Tomcat 6.0\webapps\packaging\ , then placed the UploadTest-1_1.jar into the folder. If you have to also create this, remember to restart the apache service.

    Also i noticed that you have a double \\ in c:\\srcbooks\lepetitprince.pdf .

    thanks,

    karnesh
     
    |
    Mark as:
  • Currently Being Moderated
    Mar 3, 2009 4:08 PM   in reply to (Brandon_Holly)
    When I run this I get the following error: Unable to access jarfile UploadTest-1.2.jar

    C:\>java -Xmx1024M -jar UploadTest-1.2.jar http://myserver:8080/packaging/
    package c:\acs4\srcbooks\MonteCristo.epub -pass park123

    I tried creating a package folder under packaging and I stopped and restarted my service but same message.
     
    |
    Mark as:
  • Currently Being Moderated
    Mar 3, 2009 11:34 PM   in reply to (Brandon_Holly)
    does the uploadTest-1.2.jar exist on c:\ ?
     
    |
    Mark as:
  • Currently Being Moderated
    Mar 4, 2009 10:15 AM   in reply to (Brandon_Holly)
    I had two mistakes. One it didn't exist on the C drive. And the second one was that uploadTest-1_2.jar was spelled incorrectly. -
     
    |
    Mark as:
  • Currently Being Moderated
    Mar 12, 2009 4:27 AM   in reply to (Brandon_Holly)
    Dear all,
    I am a litle bit confused about the display permissions on ebooks
    what does "allowed on any device" means ? does that means ,unlimited downloads of the ebook using same fulfillment link?
    and what "allowed on a single device" means?
    and adobe mentioned that the user can download the ebook on up to 6 devices (on what permission, will that work?

    Regards
     
    |
    Mark as:
  • Currently Being Moderated
    Mar 29, 2009 7:52 AM   in reply to (Brandon_Holly)
    I get an error with uploadTest-1.2.jar. It says it unable to read file. Contact administrator

    Regards,
    Agyemang Fellowes
    Director of Operations
    OPTiC BURST COMMUNICATIONS
    Office: 1 (209) 885-4211
    http://www.opticburst.net/
    http://www.iphone-sim-unlock.com/
     
    |
    Mark as:
  • Currently Being Moderated
    Jul 2, 2009 2:13 AM   in reply to (Agyemang)

    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!

     
    |
    Mark as:
  • Currently Being Moderated
    Jul 4, 2009 7:37 AM   in reply to Francesco Boccaletti

    Francesco,

     

    You are including the url and auth params in the portion to be signed when you shouldn't.

     

    Your code should look more like:

     

                        string baseUrl = "http://dev1:8080/fulfillment/URLLink.acsm?"

     

     

                        string params= "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");

                   string hmac = XmlUtil.CreateHMAC(params);

     

              string url = baseUrl + params + "&auth=" + hmac;

     

     

     

    Also note that orderid (or transaction id) is a key field within the acs4 database it should be unique for each new order.

     
    |
    Mark as:
  • Currently Being Moderated
    Aug 1, 2009 2:33 PM   in reply to (Brandon_Holly)

    Packaging problems:

     

    I'm tring to package with this command:
    java.exe -Xmx1024M –jar C:\uploadtest\UploadTest-1_2.jar http://www.futurbook.com:8080/packaging/package c:\acs4\srcbooks\MonteCristo.epub –pass MYCONTENTSERVERPASSWORD

     

    But I get a error like: java.io.FileNotFoundException. (The same error abobe) But I can reach the solution. I have tried everything!

     

    Can any one help me?? sergi@futurbook.com

     
    |
    Mark as:
  • Currently Being Moderated
    Aug 5, 2009 7:50 AM   in reply to (Brandon_Holly)

    I have to admit that this thread was quite useful to help me to setup my ACS4 server. I also need to thank Jim for the tips regarding the -name parameter to generate the p12 file (here: http://forums.adobe.com/message/2097395#2097395)

     

    Right now i'm migrating the ACS3 to my new ACS4. I've got something like 14000 files to migrate, but after something like 3000, the ACS4 console couldn't display the list of files migrated. I've got the message

    ERROR: Could Not Reach Server
    [FaultEvent fault=[RPC Fault faultString="Request timed out" faultCode="Client.Error.RequestTimeout" faultDetail="The request timeout for the sent message was reached without receiving a response from the server."] messageId="AA9E2BB9-FBE1-9502-F633-EAFE697349C3" type="fault" bubbles=false cancelable=true eventPhase=2]

    where messageId value change everytime I try to click on All Items, under Operator Inventory. What's the problem ? Too much data for my hardware ?

     
    |
    Mark as:
  • Currently Being Moderated
    Aug 10, 2009 7:41 AM   in reply to (Brandon_Holly)

    If you are having problems all the way around, I would suspect a database connectivity issue, however the best thing to do would be to look at the sources of information ( the error, the log files, and the configuration file ), and if that doesn't help then send them to support who can help you diagnose the problem.

     
    |
    Mark as:
  • Currently Being Moderated
    May 18, 2010 11:40 AM   in reply to Jim Lester

    Has anyone done this in java, I have decoded the shared secret and still get GBLINK_AUTH_SIGNATURE_NOMATCH, appreciate your help.

     

     

     

    thanks

    revathi

     
    |
    Mark as:

More Like This

  • Retrieving data ...

Bookmarked By (0)