You are viewing a plain text version of this content. The canonical link for it is here.
Posted to c-users@xalan.apache.org by David Fishburn <fi...@ianywhere.com> on 2003/08/06 19:15:03 UTC

RE: Xsl:include support - how to enable it?

I just upgraded to Xalan 1.6 and Xerces 2.3.0 
WinXP
VC 6 sp5

Besides changing the location of a couple of includes, I can
successfully build a Release version of my project.

I get compiler errors when I try to compile the Debug version of my
Project though:

Linking...
   Creating library Debug/xalan16trans.lib and object
Debug/xalan16trans.exp
extXalandll.obj : error LNK2001: unresolved external symbol
"__declspec(dllimport) public: void __thiscall
xalanc_1_6::XalanTransformer::setEntityResolver(class
xercesc_2_3::EntityResolver *)"
(__imp_?setEntityResolver@XalanTransformer@xalanc_1_6@@Q
AEXPAVEntityResolver@xercesc_2_3@@@Z)


Some relevant points:
I have recompiled the XercesLib project for both Win32 Release and Win32
Debug.
These successfully compiled.

I copied the lib (release and debug) to the:
xerces-c_2_3_0-win32\lib

I copied the DLL (release and debug) to the:
xerces-c_2_3_0-win32\bin


Thanks,
Dave




-----Original Message-----
From: Mark Weaver [mailto:mark@npsl.co.uk] 
Sent: Tuesday, July 29, 2003 12:36 PM
To: xalan-c-users@xml.apache.org
Subject: RE: Xsl:include support - how to enable it?


Here is a modified version that defines and installs an EntityResolver.
You will need to modify the resolver to suit; this one just returns a
URLInputSource for the URL:

class MyResolver : public EntityResolver {
public:
	InputSource* resolveEntity (const XMLCh* const publicId,
                                const XMLCh* const systemId)
	{
		XMLURL URL(systemId);
		return new URLInputSource(URL);
	}
};

Any rewriting that you want to take place can be performed on the URL
object.


RE: Xsl:include support - how to enable it?

Posted by da...@us.ibm.com.



Hi Dave,

dumpbin.exe is your friend!

   dumpbin /exports <filename>

   dumpbin /imports <filename>

Do a dumpbin without any arguments for more info.

Dave



                                                                                                                                          
                      "David Fishburn"                                                                                                    
                      <fishburn@ianywh         To:      <xa...@xml.apache.org>                                                    
                      ere.com>                 cc:      (bcc: David N Bertoni/Cambridge/IBM)                                              
                                               Subject: RE: Xsl:include support - how to enable it?                                       
                      08/06/2003 07:07                                                                                                    
                      PM                                                                                                                  
                                                                                                                                          



> My copy of Xalan-C_1_6_0D.dll _does_ contain the following symbol:
>
?setEntityResolver@XalanTransformer@xalanc_1_6@@QAEXPAVEntityResolver@xe
rcesc_2_3@@@Z

By the way, what tool did you use to find that you had that symbol?
I can't figure out which Microsoft utility will list the symbols in a
debug lib/dll.

Thanks,
Dave




RE: Xsl:include support - how to enable it?

Posted by David Fishburn <fi...@ianywhere.com>.
> My copy of Xalan-C_1_6_0D.dll _does_ contain the following symbol:
>
?setEntityResolver@XalanTransformer@xalanc_1_6@@QAEXPAVEntityResolver@xe
rcesc_2_3@@@Z

By the way, what tool did you use to find that you had that symbol?
I can't figure out which Microsoft utility will list the symbols in a
debug lib/dll.

Thanks,
Dave


RE: Xsl:include support - how to enable it?

Posted by da...@us.ibm.com.



Hi Dave,

You should double-check to make sure you changed all of the relevant
settings and that everything has been rebuilt properly.

XalanTransformer::setEntityResolver() is an inline function, so the release
build will not contain the symbol.  In a debug build, the compiler will
likely generate an out-of-line copy, so you may have to change what
libraries you link against.  My copy of Xalan-C_1_6_0D.dll _does_ contain
the following symbol:

   ?setEntityResolver@XalanTransformer@xalanc_1_6@@QAEXPAVEntityResolver@xercesc_2_3@@@Z

Dave



                                                                                                                                  
                      "David Fishburn"                                                                                            
                      <fishburn@ianywh         To:      <xa...@xml.apache.org>                                            
                      ere.com>                 cc:      (bcc: David N Bertoni/Cambridge/IBM)                                      
                                               Subject: RE: Xsl:include support - how to enable it?                               
                      08/06/2003 10:15                                                                                            
                      AM                                                                                                          
                                                                                                                                  




I just upgraded to Xalan 1.6 and Xerces 2.3.0
WinXP
VC 6 sp5

Besides changing the location of a couple of includes, I can
successfully build a Release version of my project.

I get compiler errors when I try to compile the Debug version of my
Project though:

Linking...
   Creating library Debug/xalan16trans.lib and object
Debug/xalan16trans.exp
extXalandll.obj : error LNK2001: unresolved external symbol
"__declspec(dllimport) public: void __thiscall
xalanc_1_6::XalanTransformer::setEntityResolver(class
xercesc_2_3::EntityResolver *)"
(__imp_?setEntityResolver@XalanTransformer@xalanc_1_6@@Q
AEXPAVEntityResolver@xercesc_2_3@@@Z)


Some relevant points:
I have recompiled the XercesLib project for both Win32 Release and Win32
Debug.
These successfully compiled.

I copied the lib (release and debug) to the:
xerces-c_2_3_0-win32\lib

I copied the DLL (release and debug) to the:
xerces-c_2_3_0-win32\bin


Thanks,
Dave




-----Original Message-----
From: Mark Weaver [mailto:mark@npsl.co.uk]
Sent: Tuesday, July 29, 2003 12:36 PM
To: xalan-c-users@xml.apache.org
Subject: RE: Xsl:include support - how to enable it?


Here is a modified version that defines and installs an EntityResolver.
You will need to modify the resolver to suit; this one just returns a
URLInputSource for the URL:

class MyResolver : public EntityResolver {
public:
             InputSource* resolveEntity (const XMLCh* const publicId,
                                const XMLCh* const systemId)
             {
                         XMLURL URL(systemId);
                         return new URLInputSource(URL);
             }
};

Any rewriting that you want to take place can be performed on the URL
object.