Error when accessing Core Service from a client machine

0

I am working with the Core Service on SDL Tridion 2011, connecting from client machine to the Tridion server. I am getting some error while I am trying to execeute it.

Sample code

namespace coreservice1
{
    public partial class _Default : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            try
            {
                using (ChannelFactory<ISessionAwareCoreService> factory =  new ChannelFactory<ISessionAwareCoreService>("wsHttp_2011"))
                {

                    ISessionAwareCoreService client = factory.CreateChannel();
                    ComponentData comp = (ComponentData)client.Create(component, new ReadOptions());

                    ...

                    //steps to create component                

               }
            }
            catch (Exception ex)
            {
                Response.Write(ex.StackTrace);
                Response.Write("exception is " + ex.Message);
            }
         }
    }
}

My web.config for the wsHttp_2011 is

<wsHttpBinding>
    <binding name="wsHttp" transactionFlow="true" maxReceivedMessageSize="10485760">
        <readerQuotas maxStringContentLength="10485760" maxArrayLength="10485760"/>
            <security mode="Message">
                <message clientCredentialType="Windows"/>
            </security>


<endpoint name="wsHttp_2011" address="http://serveraddress:1000/webservices/CoreService2011.svc/wsHttp" binding="wsHttpBinding" bindingConfiguration="wsHttp" contract="Tridion.ContentManager.CoreService.Client.ISessionAwareCoreService">
    <identity>
        <dns value="serveraddress"/>
    </identity>
</endpoint>

Error:

Server Error in '/' Application. 
________________________________________
Could not load file or assembly 'Tridion.Logging' or one of its dependencies. Strong name signature could not be verified.  The assembly may have been tampered with, or it was delay signed but not fully signed with the correct private key. (Exception from HRESULT: 0x80131045) 

My client code is referrring to Tridion.Logging. This assembly exists in my code. Irrespective of its existence I am getting the error. And the versions of DLL that I am referring in the client code are exactly same as in the server.

Can any one help, what all the changes I need to do?

I also checked the event logs in tridion server. I didn't find any log added there.

The code was working fine when executed on the server machine.

Event Viewer logs are like this from client machine:

ConfigurationErrorsException

Could not load file or assembly 'Tridion.Logging, Version=6.1.0.25, Culture=neutral, PublicKeyToken=ddfc895746e5ee6b' or one of its dependencies. Strong name signature could not be verified. The assembly may have been tampered with, or it was delay signed but not fully signed with the correct private key. (Exception from HRESULT: 0x80131045) at System.Web.Configuration.CompilationSection.LoadAssemblyHelper(String assemblyName, Boolean starDirective) at System.Web.Configuration.CompilationSection.LoadAllAssembliesFromAppDomainBinDirectory() at System.Web.Configuration.CompilationSection.LoadAssembly(AssemblyInfo ai) at System.Web.Compilation.BuildManager.GetReferencedAssemblies(CompilationSection compConfig) at System.Web.Compilation.BuildManager.GetPreStartInitMethodsFromReferencedAssemblies() at System.Web.Compilation.BuildManager.CallPreStartInitMethods() at System.Web.Hosting.HostingEnvironment.Initialize(ApplicationManager appManager, IApplicationHost appHost, IConfigMapPathFactory configMapPathFactory, HostingEnvironmentParameters hostingParameters, PolicyLevel policyLevel, Exception appDomainCreationException) Could not load file or assembly 'Tridion.Logging, Version=6.1.0.25, Culture=neutral, PublicKeyToken=ddfc895746e5ee6b' or one of its dependencies. Strong name signature could not be verified. The assembly may have been tampered with, or it was delay signed but not fully signed with the correct private key. (Exception from HRESULT: 0x80131045) at System.Reflection.RuntimeAssembly._nLoad(AssemblyName fileName, String codeBase, Evidence assemblySecurity, RuntimeAssembly locationHint, StackCrawlMark& stackMark, Boolean throwOnFileNotFound, Boolean forIntrospection, Boolean suppressSecurityChecks) at System.Reflection.RuntimeAssembly.nLoad(AssemblyName fileName, String codeBase, Evidence assemblySecurity, RuntimeAssembly locationHint, StackCrawlMark& stackMark, Boolean throwOnFileNotFound, Boolean forIntrospection, Boolean suppressSecurityChecks) at System.Reflection.RuntimeAssembly.InternalLoadAssemblyName(AssemblyName assemblyRef, Evidence assemblySecurity, StackCrawlMark& stackMark, Boolean forIntrospection, Boolean suppressSecurityChecks) at System.Reflection.RuntimeAssembly.InternalLoad(String assemblyString, Evidence assemblySecurity, StackCrawlMark& stackMark, Boolean forIntrospection) at System.Reflection.Assembly.Load(String assemblyString) at System.Web.Configuration.CompilationSection.LoadAssemblyHelper(String assemblyName, Boolean starDirective) Could not load file or assembly 'Tridion.Logging' or one of its dependencies. Strong name signature could not be verified. The assembly may have been tampered with, or it was delay signed but not fully signed with the correct private key. (Exception from HRESULT: 0x80131045)
at System.Web.Configuration.CompilationSection.LoadAssemblyHelper(String assemblyName, Boolean starDirective) at System.Web.Configuration.CompilationSection.LoadAllAssembliesFromAppDomainBinDirectory() at System.Web.Configuration.CompilationSection.LoadAssembly(AssemblyInfo ai) at System.Web.Compilation.BuildManager.GetReferencedAssemblies(CompilationSection compConfig) at System.Web.Compilation.BuildManager.GetPreStartInitMethodsFromReferencedAssemblies() at System.Web.Compilation.BuildManager.CallPreStartInitMethods() at System.Web.Hosting.HostingEnvironment.Initialize(ApplicationManager appManager, IApplicationHost appHost, IConfigMapPathFactory configMapPathFactory, HostingEnvironmentParameters hostingParameters, PolicyLevel policyLevel, Exception appDomainCreationException)

I didn't find any event in the log on the server.

tridion
asked on Stack Overflow Apr 3, 2012 by Patan • edited Apr 4, 2012 by Frank van Puffelen

2 Answers

4

You should not reference Tridion.Logging. It's not required for CoreService. All you need is CoreService.dll. Moreover, Tridion.Logging is not public API and thus shouldn't be used at all

answered on Stack Overflow Apr 3, 2012 by Andrey Marchuk
0

Check the Tridion event log. Also make sure you are not using any other Tridion assemblies.

answered on Stack Overflow Apr 3, 2012 by Bappi • edited Apr 4, 2012 by Frank van Puffelen

User contributions licensed under CC BY-SA 3.0