How can we help?

My Cases

Diagnosing Blackboard Learn 9 Publisher Failures
Last Updated: Dec 15, 2017 05:00PM EST

This article applies to:  Echo360 Admins


This article describes how to identify and resolve various types of publishing issues that can occur when integrating the ESS with Blackboard Learn 9. In order to follow the steps recommended here, you will need to have administrator-level access to the Web interfaces on both the EchoSystem Server and the Blackboard server.


Reading the ESS Logs

All publishing failures generate an error in the ESS application log containing detailed information about why the request to the Blackboard server could not succeed. In almost every case, these error messages can tell you exactly what you need to know to determine the cause of the problem and the correct steps for resolving it. The tricky part is locating the relevant information.

Access to the application logs is easily obtained through the ESS Web UI. Navigate to the Monitor tab, then click the Support sub-tab. In the Log Files section, all of the system logs to date are listed with links to their content. The most recent application log is shown at the top of the list. Just follow the link to view it.

Blackboard Publishing Errors

Blackboard publishing errors have a very specific format and are easy to identify within the ESS application log. Observe the following example:

publishing presentation Mathematics of Quantum Neutrino Fields [bacd2e78-6b3d-4b7c-8a9e-b188ff78c59d], to Bb Learn 9 SP6 (Links)
Provider for message digest: SUN
Provider for mac: SUN
Title:Mathematics of Quantum Neutrino Fields
ScheduledStartTime:2011-09-09 13:30:00
HTTP Status: 403
Blackboard Response Body: 
<html><head><title>Apache Tomcat/6.0.20 - Error report</title><style>
<!--H1 {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;font-size:22px;} 
H2 {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;font-size:16px;} 
H3 {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;font-size:14px;} 
BODY {font-family:Tahoma,Arial,sans-serif;color:black;background-color:white;} 
B {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;} 
P {font-family:Tahoma,Arial,sans-serif;background:white;color:black;font-size:12px;}
A {color : black;} {color : black;}HR {color : #525D76;}-->
</style> </head><body><h1>HTTP Status 403 - The specified object was not found.</h1>
<HR size="1" noshade="noshade"><p><b>type</b> Status report</p><p><b>message</b> <u>The specified object was not found.</u></p>
<p><b>description</b> <u>Access to the specified resource (The specified object was not found.) has been forbidden.</u></p>
<HR size="1" noshade="noshade"><h3>Apache Tomcat/6.0.20</h3></body></html>
PublishingException while publishing presentation [bacd2e78-6b3d-4b7c-8a9e-b188ff78c59d] to Bb Learn 9 SP6 (Links): 
Blackboard Building Block authentication failed. Please check plugin properties and ess.log.
com.echo360.ess.publish.PublishingException: Blackboard Building Block authentication failed.  Please check plugin properties and ess.log.
	at com.echo360.ess.publish.BBPoster.send( ~[na:na]
	at com.echo360.ess.publish.BlackBoardPublishingPlugin.publish( ~[na:na]
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:1.6.0_24]
	at sun.reflect.NativeMethodAccessorImpl.invoke( ~[na:1.6.0_24]
	at sun.reflect.DelegatingMethodAccessorImpl.invoke( ~[na:1.6.0_24]
	at java.lang.reflect.Method.invoke( ~[na:1.6.0_24]
	at com.echo360.ess.service.impl.PublisherServiceImpl$ ~[ess-lib-4.0.17.jar:4.0.17]
	at ~[na:1.6.0_24]
Caused by: com.echo360.ess.publish.PublishingException: Blackboard Building Block authentication failed.  Please check plugin properties and ess.log.
	at com.echo360.ess.publish.BBPoster.send( ~[na:na]
	... 7 common frames omitted
publishing presentation Mathematics of Quantum Neutrino Fields [bacd2e78-6b3d-4b7c-8a9e-b188ff78c59d], to Bb Learn 9 SP6 (Links) FAILED

This is a typical Blackboard publishing failure. In this example, the time stamp, service, and code point data have been stripped out so we can focus solely on the error content. Reading through, you can see that the error block contains every piece of information relevant to the attempt: the title of the Echo, the ID of the target course, the URLs of the Echo content, and the response of the Blackboard server.

What we care about is a string of text hidden in the Blackboard Response Body section of the error block. That section contains the HTML generated by the Blackboard server in reply to the ESS' publishing request. The underlined segment just after the <body> tag in the error block above, in this case, is the relevant string: "HTTP Status 403 - The specified object was not found." Other Blackboard publishing errors will contain a different string at the same location in the HTML of the response body. This article will work through every possible response string in the sections below.

com.echo360.ess.publish.PublishingException: Cannot be left blank.

This is not an HTTP response from the Blackboard server, but an error from the ESS indicating that the CMS-ID field for the publisher instance was not populated. Every instance of a Blackboard publisher needs to know the CMS-ID of the course to which it should publish its content.

HTTP Status 400 - Error posting Echo content to Blackboard. blackboard.persist.KeyNotFoundException: The specified object was not found.

See HTTP Status 403 - The specified object was not found below. Only Building Blocks older than version 4.0 will report HTTP Status 400.

HTTP Status 403 - Building Block authentication failed. User username does not exist.

The Blackboard username specified in your publisher configuration does not actually exist on the Blackboard server. This username should be that of an account on your Blackboard server that has the necessary privileges to create content in any of the courses to which you want to publish.

HTTP Status 403 - Error validating Blackboard Building Block credentials. java.lang.Exception: Building Block authentication failed. Shared secret values do not match.

The shared secret is a value common to both the ESS publisher and Blackboard Building Block configurations, in the form of an arbitrary alphanumeric string. The shared secret field must match in both places, without any additional white-space.

HTTP Status 403 - The specified object was not found.

The CMS-ID (course ID) provided at the section or Echo level in the ESS does not exist on the Blackboard server. This value defines which course on the Blackboard server should receive the content post.

In order to locate a valid CMS-ID, visit the Courses tab on your Blackboard server and browse the Course Catalog. If you search for your course with the filters, the CMS-ID that the ESS expects will be the short string under the "Course ID" column.

HTTP Status 403 - User username is not associated with course.

The Blackboard user name specified in your ESS publisher configuration is not enrolled in the selected course. This error only appears if the "check user for course membership" option is enabled in your EchoSystem Content Creator Building Block.

You have three options for resolving this issue:

  • Disable the "check user for course membership" option in your Building Block.
  • Enroll the user given in your publisher configuration into the course to which you are posting.
  • Choose a different user who is already enrolled in the course.

HTTP Status 403 - You don't have permission to access /webapps/any-acrbb-bb_bb60/clppost on this server.

If the Blackboard user name and Shared Secret specified in your ESS publisher configuration are definitely correct then this message may be displayed when a load balancer, proxy or other infrastructure in-between the ESS and Blackboard servers is re-writing the URLs. An example of when this may occur is during a transition of a Blackboard installation to a new hostname.

HTTP Status 404 - The page cannot be found.

The URL for your Blackboard server in your publisher configuration is incorrect or the Building Block is not installed. This value should only be the base URL (i.e., the host name and document root, which is usually just /) of the Blackboard server.

HTTP Status 500 - Content area not found within course.

At least one of the Default Content Area and Alternate Content Area fields in the Building Block must match a preexisting content area within your target courses in order for Echo links to be posted there. The Building Block does not have the ability to create these content areas for you, so it is best to choose the defaults or some other content area that is already common to your Blackboard courses.

Seamless Authentication

Please see our separate article covering the troubleshooting of Seamless configuration.
seconds ago
a minute ago
minutes ago
an hour ago
hours ago
a day ago
days ago
Invalid characters found