Copied to clipboard

Flag this post as spam?

This post will be reported to the moderators as potential spam to be looked at


  • Allan Hawkey 232 posts 303 karma points
    Oct 13, 2011 @ 21:20
    Allan Hawkey
    0

    Prefix ucomponents.nodes is not defined

    I've just installed v2.2 of uComponents in a website with umbraco 4.7, and added the following to an xslt file to obtain the uniqueID of a member:

    <xsl:value-of select="ucomponents.nodes:GetUniqueId(1740)"/>

    where 1740 is the ID of the member whose Unique ID I need to return in this simple example.

    I got this error on saving the xslt file:

    System.Xml.Xsl.XslLoadException: Prefix 'ucomponents.nodes' is not defined. An error occurred at C:\inetpub\wwwroot\Test\xslt\634541337501939547_temp.xslt(35,2).
    at System.Xml.Xsl.XslCompiledTransform.LoadInternal(Object stylesheet, XsltSettings settings, XmlResolver stylesheetResolver)
    at umbraco.presentation.webservices.codeEditorSave.SaveXslt(String fileName, String oldName, String fileContents, Boolean ignoreDebugging)

    Can anyone let me know what I'm doing wrong?  (Probably something obvious!)

    Thanks

  • Jan Skovgaard 11280 posts 23678 karma points MVP 11x admin c-trib
    Oct 13, 2011 @ 21:32
    Jan Skovgaard
    1

    Hi Allan

    You probably need to add the following prefixe attributes to your xsl:stylesheet element

    xmlns:ucomponents.cms="urn:ucomponents.cms"
    xmlns:ucomponents.dates
    ="urn:ucomponents.dates"
    xmlns:ucomponents.io="urn:ucomponents.io"
    xmlns:ucomponents.media="urn:ucomponents.media"
    xmlns:ucomponents.members="urn:ucomponents.members"
    xmlns:ucomponents.nodes="urn:ucomponents.nodes"
    xmlns:ucomponents.search="urn:ucomponents.search"
    xmlns:ucomponents.strings="urn:ucomponents.strings"
    xmlns:ucomponents.urls="urn:ucomponents.urls"
    xmlns:ucomponents.xml="urn:ucomponents.xml"

    And then you also need to make sure the xmlns prefixes are excluded in the rendered code by adding the prefixes to this attribute: exclude-result-prefixes

    Like this: exclude-result-prefixes="ucomponents.cms ucomponents.dates etc."

    So your xsl:stylesheet element could for instance look like this

    <xsl:stylesheet
      version="1.0"
      xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
      xmlns:msxml="urn:schemas-microsoft-com:xslt"
      xmlns:umbraco.library="urn:umbraco.library" xmlns:Exslt.ExsltCommon="urn:Exslt.ExsltCommon" xmlns:Exslt.ExsltDatesAndTimes="urn:Exslt.ExsltDatesAndTimes" xmlns:Exslt.ExsltMath="urn:Exslt.ExsltMath" xmlns:Exslt.ExsltRegularExpressions="urn:Exslt.ExsltRegularExpressions" xmlns:Exslt.ExsltStrings="urn:Exslt.ExsltStrings" xmlns:Exslt.ExsltSets="urn:Exslt.ExsltSets" xmlns:dropbox="urn:dropbox" xmlns:filesystem="urn:filesystem" xmlns:facebook="urn:facebook" xmlns:flickr="urn:flickr" xmlns:youtube="urn:youtube" xmlns:ucomponents.cms="urn:ucomponents.cms" xmlns:ucomponents.dates="urn:ucomponents.dates" xmlns:ucomponents.io="urn:ucomponents.io" xmlns:ucomponents.media="urn:ucomponents.media" xmlns:ucomponents.members="urn:ucomponents.members" xmlns:ucomponents.nodes="urn:ucomponents.nodes" xmlns:ucomponents.search="urn:ucomponents.search" xmlns:ucomponents.strings="urn:ucomponents.strings" xmlns:ucomponents.urls="urn:ucomponents.urls" xmlns:ucomponents.xml="urn:ucomponents.xml"
      exclude-result-prefixes="msxml umbraco.library Exslt.ExsltCommon Exslt.ExsltDatesAndTimes Exslt.ExsltMath Exslt.ExsltRegularExpressions Exslt.ExsltStrings Exslt.ExsltSets dropbox filesystem facebook flickr youtube ucomponents.cms ucomponents.dates ucomponents.io ucomponents.media ucomponents.members ucomponents.nodes ucomponents.search ucomponents.strings ucomponents.urls ucomponents.xml ">

    In newer versions of Umbraco this is usually done automatically when one creates a new xslt file, but I must admit that I can't remember if it's added automatically to those that have already been created...I think you encounter this problem because you're using ucomponents on a file that has already been created before you installed ucomponents? :-)

    The most easy way to make sure all the above cumbersome and boring stuff is included in your file is to create a new one and then just copy your xsl:template element into the new one or vice verca.

    Hope it makes sense :)

    /Jan

  • Allan Hawkey 232 posts 303 karma points
    Oct 13, 2011 @ 21:49
    Allan Hawkey
    0

    Excellent - that solves the error.  Thank you.

    Now the next problem is that nothing is returned!  The nodeID (1740) is definitely valid, yet the uniqueID is not being displayed.

    Any ideas?

     

     

  • Allan Hawkey 232 posts 303 karma points
    Oct 13, 2011 @ 22:21
    Allan Hawkey
    0

    A bit more info - this seems to work for content nodes, but is not picking up the uniqueID for a member node.  Why would that be?

  • Jan Skovgaard 11280 posts 23678 karma points MVP 11x admin c-trib
    Oct 13, 2011 @ 22:33
    Jan Skovgaard
    0

    Hi Allan

    I have not been using this particular extension myself but I suppose it's because it's only intended for use on content nodes?

    What is it that you want to achieve? Perhaps there is another way to do it :)

    /Jan

  • Allan Hawkey 232 posts 303 karma points
    Oct 13, 2011 @ 22:56
    Allan Hawkey
    0

    Hi Jan

    Thanks for that - I need a unique, non-guessable, automatically generated ID for each member which I can use to synchronise with data in an external database, and which I can pass as a variable into iframes after a member has logged in to the website so that the member is auto-logged-in to a third party system.

    Would appreciate your ideas...

    Thanks
    Allan

  • Lee Kelleher 4026 posts 15837 karma points MVP 13x admin c-trib
    Oct 14, 2011 @ 09:55
    Lee Kelleher
    0

    Hi Allan,

    That 'GetUniqueId' method only works with content items.  Currently we don't have a matching one in the Members extensions... I'll look to add one for the next release of uComponents. (We don't have a set release date yet - but should be soon).

    Cheers, Lee.

  • Allan Hawkey 232 posts 303 karma points
    Oct 14, 2011 @ 10:00
    Allan Hawkey
    0

    Hi Lee

    That's helpful - thanks.  Could you give me an idea of the sort of timescale you might be looking at for the next release - we have quite an urgent project, so will need to find an alternative workaround unless something's likely to be available in the next week or two...

    Many thanks
    Allan

  • Lee Kelleher 4026 posts 15837 karma points MVP 13x admin c-trib
    Oct 14, 2011 @ 10:07
    Lee Kelleher
    0

    Hi Allan,

    Drop me an email... (via my contact form) should be able to get you a pre-release beta package/zip.

    Cheers, Lee.

  • Allan Hawkey 232 posts 303 karma points
    Oct 14, 2011 @ 10:08
    Allan Hawkey
    0

    Think there's a broken link to the contact form??

  • Lee Kelleher 4026 posts 15837 karma points MVP 13x admin c-trib
    Oct 14, 2011 @ 10:09
    Lee Kelleher
    1

    Fixed it - didn't prefix "http://" :-$

  • This forum is in read-only mode while we transition to the new forum.

    You can continue this topic on the new forum by tapping the "Continue discussion" link below.

Please Sign in or register to post replies