I have created a component link on page published through SDL Tridion. But getting following error on webpage.

Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.

Exception Details: Java.Lang.Throwable: java/lang/NoClassDefFoundError

Some configured classpath roots cannot be found


ClassPath : Z:\websites\dev\Preview\bin\bin

============================================================ Some Java classes or interfaces could not be found or loaded

The most typical reasons for this problem are:

  • you forgot to configure a classpath
  • a jarfile, zipfile, or directory is missing from your classpath
  • you have a typo in one of your classpath entries
  • a jarfile required by one of your classes is missing from your classpath
  • a jarfile on your classpath is out-of-date and does not contain some new classes


com.tridion.storage.ugc.dao.persistence.JPARatingDAO com.tridion.validation.adapter.ContentValidatorSpringAdapter com.tridion.validation.ValidationFacade com.tridion.web.asp.ASPAdmin com.tridion.linking.Linking com.tridion.ugc.taglib.model.Rating com.tridion.web.jsp.ResponseWrapper com.tridion.validation.ValidationException com.tridion.storage.ugc.UGCValidationFacade com.tridion.ambientdata.web.AmbientDataServletFilter com.tridion.ugc.taglib.model.Comment com.tridion.storage.ugc.dao.persistence.JPAUserDAO com.tridion.validation.adapter.ErrorsImp$Error com.tridion.ugc.validation.DoubleCommentingValidator com.tridion.validation.adapter.ErrorsImp com.tridion.web.jsp.JSPXSLTProcessor com.tridion.ugc.validation.DoubleRatingValidator com.tridion.storage.ugc.dao.persistence.JPACommentDAO com.tridion.web.jsp.JSPProcessor com.tridion.deployer.Deployer com.tridion.ugc.Status com.tridion.storage.ugc.dao.persistence.JPAItemStatsDAO com.tridion.linking.ASPLinking com.tridion.storage.ugc.UGCConfigurationLoader com.tridion.web.Admin com.tridion.ugc.taglib.model.User com.tridion.storage.StorageManagerFactory com.tridion.webservices.security.authentication.OAuth2AccessTokenHandler com.tridion.ugc.taglib.model.ItemStats [Lcom.tridion.ugc.Status; com.tridion.ugc.taglib.model.Item com.tridion.storage.ugc.dao.RatingDAO com.tridion.validation.ContentValidator com.tridion.validation.Errors com.tridion.storage.ugc.dao.UserDAO com.tridion.storage.ugc.dao.CommentDAO com.tridion.storage.ugc.dao.ItemStatsDAO

]]> (AbstractLink.java:69) at com.tridion.linking.ComponentLink.(ComponentLink.java:84) at Codemesh.JuggerNET.JavaClass.ThrowException(Exception ex) at Codemesh.JuggerNET.NTypeValue.Throw(Int64 inst) at Codemesh.JuggerNET.JavaClass.ThrowTypedException(Int64 inst) at Codemesh.JuggerNET.JavaMethod.CallObject(JavaProxy jpo, JavaMethodArguments args) at Com.Tridion.Linking.ComponentLink..ctor(Int32 publicationId) at Tridion.ContentDelivery.Web.UI.ComponentLink.Render(HtmlTextWriter writer) at System.Web.UI.Control.RenderControlInternal(HtmlTextWriter writer, ControlAdapter adapter) at System.Web.UI.Control.RenderChildrenInternal(HtmlTextWriter writer, ICollection children) at System.Web.UI.Control.RenderControlInternal(HtmlTextWriter writer, ControlAdapter adapter) at System.Web.UI.Control.RenderChildrenInternal(HtmlTextWriter writer, ICollection children) at System.Web.UI.Page.Render(HtmlTextWriter writer) at System.Web.UI.Control.RenderControlInternal(HtmlTextWriter writer, ControlAdapter adapter) at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)]]>

  • Is your CD license correct, not expired, machine name and processor cores match?
    – Raj Kumar
    Jul 1, 2014 at 6:49
  • Your classpath is showing as ` Z:\websites\dev\Preview\bin\bin` ... one too many bins? Jul 1, 2014 at 9:21

3 Answers 3


This NoClassDefFoundError error usually comes in case of any of the following scenario:

  • As you have also listed in your question, there are some dependent .jar or .war file which is missing or have wrong path set somewhere (in configs or code)
  • Your existing java installation (JDK or JRE) is corrupted (You may check by running java -version client to verify)
  • You are missing any Tridion related configuration file (Probably the cd_storage_config) or any change in XML configuration files have made them invalid XML files
  • You have wrong/expired/invalid license files for Content Delivery or wrong path of it has been set in the Tridion related configuration files

I will suggest to check logs files & validate your bin/config/cd_licenses.xml file, linking problem usually occurs when you have invalid license file.

You could have following issues in file

  1. Machine name not matching with the name in license file
  2. License expired
  3. No of cores in your system are more than allowed limit in license.

Based on my experience, there are another common scenario, usually if you have configured a common location folder for configuration files. Please check if the application pool user has read access to the license file location.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.