I have setup the shibboleth-Idp as servelet in servelet container tomcat6. However, tomcat start the servelet fails to load. My data connectors are causing it.
The code I am using for connectors is as follows:
<resolver:DataConnector id="myLDAP" xsi:type="dc:LDAPDirectory"
ldapURL="ldap://ldap.example.org"
baseDN="ou=people,dc=example,dc=org"
principal="cn=admin,dc=example,dc=org"
principalCredential="khurram">
<dc:FilterTemplate>
<![CDATA[
(uid=$requestContext.principalName)
]]>
</dc:FilterTemplate>
</resolver:DataConnector>
<!-- StoredID (persistentID) Connector -->
<resolver:DataConnector id="myStoredId"
xsi:type="dc:StoredId"
generatedAttributeID="persistentID"
sourceAttributeID="swissEduPersonUniqueID"
salt="CsAizrOmTV7GR7/wSoHX32s0NbHCi7hppi11kLhk/XFRpqCo">
<resolver:Dependency ref="swissEduPersonUniqueID" />
<dc:ApplicationManagedConnection
jdbcDriver="com.mysql.jdbc.Driver"
jdbcURL="jdbc:mysql://localhost:3306/shibboleth?autoReconnect=true"
jdbcUserName="shibboleth"
jdbcPassword="demo" />
</resolver:DataConnector>
The error I get in shibboeth IDP-Process.log logs is as follows
02:01:40.015 - ERROR [edu.internet2.middleware.shibboleth.common.config.BaseService:188] - Configuration was not loaded for shibboleth.AttributeResolver service, error creating components. The root cause of this error was: org.xml.sax.SAXParseException: cvc-identity-constraint.4.3: Key 'DataConnectorAttributeDefinitionDependencyRef' with value 'swissEduPersonUniqueID' not found for identity constraint of element 'AttributeResolver'.
Can anyone point out what I am doing wrong?