As mentioned in another SO answer. The issue is that you define a namespace in your source XML ("http://www.xxxxx.com") but you do not use the namespace in your xslt.
You can either remove the namespace from the source XML or specify it in your xslt:
<?xml version="1.0" encoding="utf-8"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:msxsl="urn:schemas-microsoft-com:xslt"
exclude-result-prefixes="msxsl"
xmlns:my="http://www.xxxxx.com">
<xsl:output method="html" indent="yes"/>
<xsl:template match="/">
<xsl:for-each select="my:menus">
<ul>
<xsl:for-each select="my:menu">
<li>
<a href="{my:url}">
<xsl:value-of select="my:nombre" />
</a>
<ul>
<xsl:for-each select="my:submenu">
<li>
<a href="{my:url}">
<xsl:value-of select="my:nombre" />
</a>
</li>
</xsl:for-each>
</ul>
</li>
</xsl:for-each>
</ul>
</xsl:for-each>
</xsl:template>
</xsl:stylesheet>