Magnolia to SQL Server 2014 connection - magnolia

I am new to Magnolia world and trying to store JCR on database instead of local file system.
I am using Magnolia 5.4, SQLJDB42.jar and SQL server 2014 server for the same.
I have followed all the instruction present at https://wiki.magnolia-cms.com/display/WIKI/Database-Only+Repositories+with+JNDI+Datasources and it's working with MySQL server but when I tried the same with SQL server 2014 it's giving me the follwoing error:
INFO info.magnolia.cms.beans.config.ConfigLoader 26.12.2016 17:28:29
-- Initializing content repositories
INFO info.magnolia.repository.DefaultRepositoryManager 26.12.2016 17:28:29
-- Loading JCR
INFO info.magnolia.repository.DefaultRepositoryManager 26.12.2016 17:28:29
-- Loading JCR magnolia
INFO info.magnolia.jackrabbit.ProviderImpl 26.12.2016 17:28:29
-- Loading
repository at
C:\Users\665564\MagnoliaRepositories\author\repositories\magnolia
(config file:
C:\Users\665564\magnolia-5.5\apache-tomcat-8.5.5\webapps\magnoliaAuthor\WEB-INF\config\repo-conf\jackrabbit-bundle-mssql-search-pm.xml) - cluster id: "<unset>"
DEBUG info.magnolia.jackrabbit.ProviderImpl 26.12.2016 17:28:29
-- No JNDI bound Repository found with name magnoliaAuthor, trying to initialize a new Repository
ERROR
org.apache.jackrabbit.core.util.db.ConnectionHelper 26.12.2016
17:28:31
-- Failed to execute SQL (stacktrace on DEBUG log level):
com.microsoft.sqlserver.jdbc.SQLServerException: Incorrect syntax near
'$'
Then ,I have done the hard coding of all the path variables (like ${wsp.home}) and now I am getting the below mentioned error:
INFO info.magnolia.init.MagnoliaServletContextListener 27.12.2016 13:50:06
-- Property sources loaded [DefaultMagnoliaConfigurationProperties with sources: [SystemPropertySource][ServletContextPropertySource from WEB-INF/config/magnoliaAuthor/magnolia.properties [ServletContextPropertySource from WEB-INF/config/magnoliaAuthor/magnolia.properties [ServletContextPropertySource from WEB-INF/config/default/magnolia.properties][ModulePropertiesSource from modules [core, dam, freemarker-support, lang-el, activation, categorization-support, ce-product-descriptor, imaging-support, resource-loader, rest-client, rest-integration, cache, config, i18n, rest-services, dam-jcr, ehcache, rendering, ui-framework, appswitcher, imaging, resteasy-client, scheduler, templating, ui-mediaeditor, resources, task-management, templating-jsp, ui-admincentral, about-app, cache-app, groovy, inplace-templating, log-tools, mail, messages-app, pages, resources-app, sample-app, security-app, site, ui-contentapp, cache-browser-app, contacts, dam-app, dam-imaging, dam-templating, definitions-app, form, google-sitemap, jcr-browser-app, jcr-tools, mte-imaging, site-app, mte, public-user-registration, forum, mtk, rssaggregator, categorization, commenting, lang-da, lang-ar, lang-cs, lang-de, lang-es, lang-fi, lang-fr, lang-he, lang-hr, lang-hu, lang-id, lang-it, lang-ja, lang-nl, lang-no, lang-pl, lang-pt, lang-pt_BR, lang-ru, lang-sk, lang-sq, lang-sv, lang-tr, lang-zh_CN, lang-zh_TW, travel-demo, tours, lang-ko, webapp]][InitPathsPropertySource]]
INFO info.magnolia.cms.beans.config.ConfigLoader 27.12.2016 13:50:06
-- Initializing content repositories
INFO info.magnolia.repository.DefaultRepositoryManager 27.12.2016 13:50:06
-- Loading JCR
INFO info.magnolia.repository.DefaultRepositoryManager 27.12.2016 13:50:06
-- Loading JCR magnolia
INFO info.magnolia.jackrabbit.ProviderImpl 27.12.2016 13:50:06
-- Loading repository at C:\Users\665564\magnolia-5.5\apache-tomcat-8.5.5\webapps\magnoliaAuthor\repositories\magnolia (config file: C:\Users\665564\magnolia-5.5\apache-tomcat-8.5.5\webapps\magnoliaAuthor\WEB-INF\config\repo-conf\jackrabbit-bundle-mssql-search.xml) - cluster id: "<unset>"
WARN org.apache.jackrabbit.core.config.ConfigurationErrorHandler 27.12.2016 13:50:06
-- Warning parsing the configuration at line 4 using system id file:/C:/Users/665564/magnolia-5.5/apache-tomcat-8.5.5/webapps/magnoliaAuthor/WEB-INF/config/repo-conf/jackrabbit-bundle-mssql-search.xml: org.xml.sax.SAXParseException; systemId: file:/C:/Users/665564/magnolia-5.5/apache-tomcat-8.5.5/webapps/magnoliaAuthor/WEB-INF/config/repo-conf/jackrabbit-bundle-mssql-search.xml; lineNumber: 4; columnNumber: 32; Attribute "name" must be declared for element type "DataSources".
WARN org.apache.jackrabbit.core.config.ConfigurationErrorHandler 27.12.2016 13:50:06
-- Warning parsing the configuration at line 11 using system id file:/C:/Users/665564/magnolia-5.5/apache-tomcat-8.5.5/webapps/magnoliaAuthor/WEB-INF/config/repo-conf/jackrabbit-bundle-mssql-search.xml: org.xml.sax.SAXParseException; systemId: file:/C:/Users/665564/magnolia-5.5/apache-tomcat-8.5.5/webapps/magnoliaAuthor/WEB-INF/config/repo-conf/jackrabbit-bundle-mssql-search.xml; lineNumber: 11; columnNumber: 17; The content of element type "DataSources" must match "(DataSource)*".
ERROR info.magnolia.jackrabbit.ProviderImpl 27.12.2016 13:50:07
-- Unable to initialize repository: Unable to create or lock file C:\Users\665564\magnolia-5.5\apache-tomcat-8.5.5\webapps\magnoliaAuthor\repositories\magnolia\.lock javax.jcr.RepositoryException: **Unable to create or lock file C:\Users\665564\magnolia-5.5\apache-tomcat-8.5.5\webapps\magnoliaAuthor\repositories\magnolia\.lock**
at
org.apache.jackrabbit.core.util.RepositoryLock.tryLock(RepositoryLock.java:155)
at
org.apache.jackrabbit.core.util.RepositoryLock.acquire(RepositoryLock.java:138).
PFB, details of my repository.xml file, it's a default file I haven't change anything in that:
<!-- magnolia default repository -->
<Repository name="magnolia" provider="info.magnolia.jackrabbit.ProviderImpl" loadOnStartup="true">
<param name="configFile" value="${magnolia.repositories.jackrabbit.config}" />
<param name="repositoryHome" value="${magnolia.repositories.home}/magnolia" />
<!-- the default node types are loaded automatically
<param name="customNodeTypes" value="WEB-INF/config/repo-conf/nodetypes/magnolia_nodetypes.xml" /> -->
<param name="contextFactoryClass" value="org.apache.jackrabbit.core.jndi.provider.DummyInitialContextFactory" />
<param name="providerURL" value="localhost" />
<param name="bindName" value="${magnolia.webapp}" />
<workspace name="website" />
<workspace name="config" />
<workspace name="users" />
<workspace name="userroles" />
<workspace name="usergroups" />
</Repository> </JCR>
When I tried with the bindName="magnoliaAuthor" and absolute path for configFile & magnolia.repositories.home, it's giving me the below mentioned error:
INFO info.magnolia.cms.beans.config.ConfigLoader 28.12.2016 16:30:40
-- Initializing content repositories INFO info.magnolia.repository.DefaultRepositoryManager 28.12.2016 16:30:40
-- Loading JCR
INFO info.magnolia.repository.DefaultRepositoryManager 28.12.2016 16:30:40
-- Loading JCR magnolia INFO info.magnolia.jackrabbit.ProviderImpl 28.12.2016 16:30:40 -- Loading repository at C:\Users\665564\magnolia-5.5\apache-tomcat-8.5.5\webapps\magnoliaAuthor\repositories\magnolia (config file: C:/Users/665564/magnolia-5.5/apache-tomcat-8.5.5/webapps/magnoliaAuthor/WEB-INF/config/repo-conf/jackrabbit-bundle-mssql-search.xml) - cluster id: "<unset>"
DEBUG info.magnolia.jackrabbit.ProviderImpl 28.12.2016 16:30:40
-- No JNDI bound Repository found with name magnoliaAuthor, trying to initialize a new Repository
ERROR org.apache.jackrabbit.core.util.db.ConnectionHelper 28.12.2016
16:30:42
-- Failed to execute SQL (stacktrace on DEBUG log level): com.microsoft.sqlserver.jdbc.SQLServerException: Incorrect syntax near '$'.
ERROR org.apache.jackrabbit.core.util.db.ConnectionHelper 28.12.2016 16:30:42
-- Failed to execute SQL (stacktrace on DEBUG log level): com.microsoft.sqlserver.jdbc.SQLServerException: Incorrect syntax near '$'.
ERROR org.apache.jackrabbit.core.fs.db.DatabaseFileSystem 28.12.2016 16:30:42
-- failed to initialize file system com.microsoft.sqlserver.jdbc.SQLServerException: **Incorrect syntax near '$**'.
Please advice.
Thanks in advance.

Multiple things wrong here.
First, you get
No JNDI bound Repository found with name magnoliaAuthor
so your JNDI connection can't be found. Where did you configure it? In the tomcat config file? Check this first to make sure you have it configured and named it correctly. My guess would be that you have made error either in configuring jndi or when referring to it from jackrabbit-bundle-mssql-search
Second, after removing all the variables, the error you get is
jackrabbit-bundle-mssql-search.xml; lineNumber: 4; columnNumber: 32; Attribute "name" must be declared for element type "DataSources".
so what happened is that while editing, by mistake, you have removed too much or inserted wrong character in the xml file at line 4 and file has now invalid syntax.
Another thing I've noticed is that the log files refer to two different files - jackrabbit-bundle-mssql-search-pm.xml and jackrabbit-bundle-mssql-search.xml. Unless you have done that intentionally, perhaps that is yet another mistake? Either way, content of this file is most likely crucial if the above two hints don't help in solving your issue.

Related

Unable to request the metadata service Service-Id after upgrading to Artifactory 6.9.1 from 6.0.2

I have upgraded a few test instances of our Artifactory 6.0.2 Installation to version 6.9.1 using the provided instructions found at:
https://www.jfrog.com/confluence/display/RTF/Upgrading+Artifactory
I have tried both the yum upgrade and rpm installation pathways, and would like to end the installation with no error messages in the log files to minimize any potential issues from such errors.
After installation and many manual remediation steps I have reached an error "Unable to request the Metadata Service Service-Id" that I cannot find Google results for:
2019-04-09 16:22:13,409 [art-init] [ERROR] (o.a.m.s.s.ArtifactoryMetadataClientConfigStore:111) - Unable to request the Metadata Service Service-Id
2019-04-09 16:22:13,409 [art-init] [ERROR] (o.a.m.s.MetadataEventServiceImpl:188) - Unable to init the Metadata client. The Metadata Event pipeline will be disabled.
I have tried both the yum upgrade and rpm installation pathways.
After the upgrades, I noticed errors in the Catalina and Artifactory log files and followed the google search results regarding those error messages (added below my question for posterity):
(1) Created:
/var/opt/jfrog/artifactory/access/etc/bootstrap.creds
Containing:
access-admin#127.0.0.1=NEW_PASSWORD
(2) Removed access folder:
rm -rf /opt/jfrog/artifactory/tomcat/webapps/access
(3) Changed permissions of Artifactory directories:
cd /var/opt/jfrog/artifactory/
chown -R artifactory:artifactory .
(4) EDITED the artifactory.system.properties file adding:
artifactory.pathChecksum.migration.job.enabled=true
(5) Enabled sha 256 migration by adding this content to this same file:
##SHA2 Migration block
artifactory.sha2.migration.job.enabled=true
artifactory.sha2.migration.job.queue.workers=5
(5) Finally, Rebooted instance.
Yet the errors including The Metadata Event pipeline will be disabled persist.
I expect that the final state of the Artifactory server will be such that there are no error messages in the Artifactory nor Catalina log files.
Any assistance on remediating this error so that i can deploy the latest Artifactory build will be highly appreciated.
Thank you in advance.
======================
Here are some of the ERROR LOGS WHICH INITIATED CHANGES SHOWN ABOVE:
(1) 2019-03-27 05:03:22,872 [art-init] [WARN ] (o.j.a.c.AccessClientHttpException:41) - Unrecognized ErrorsModel by Access. Original message: Failed on executing /api/v1/system/ping, with response: Not Found
2019-03-27 05:03:22,872 [art-init] [ERROR] (o.a.s.a.AccessServiceImpl:364) - Could not ping access server: {}
org.jfrog.access.client.AccessClientHttpException: HTTP response status 404:Failed on executing /api/v1/system/ping, with response: Not Found.
(2)2019-03-27 05:06:53,235 [art-exec-3] [INFO ]
(o.a.s.j.m.s.Sha256MigrationJobDelegate:216) - SHA256 migration job (for existing artifacts) is disabled and will not run, there are 52496 artifacts without SHA256 values in the database.  Future versions of Artifactory may enforce this migration as a prerequisite for upgrades.
(3) 2019-04-04 16:20:10,951 [localhost-startStop-1] [JFrog-Access] [WARN ] (o.s.b.c.e.AnnotationConfigEmbeddedWebApplicationContext:550) - Exception encountered during context initialization - cancelling refresh attempt: org.springframework.context.ApplicationContextException: Unable to start embedded container; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'org.springframework.boot.autoconfigure.jersey.JerseyAutoConfiguration': Unsatisfied dependency expressed through constructor parameter 1; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'jerseyConfig' defined in URL [jar:file:/opt/jfrog/artifactory/tomcat/webapps/access/WEB-INF/lib/access-application-4.2.0.jar!/org/jfrog/access/rest/config/JerseyConfig.class]: Bean instantiation via constructor failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [org.jfrog.access.rest.config.JerseyConfig]: Constructor threw exception; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'systemResource' defined in URL [jar:file:/opt/jfrog/artifactory/tomcat/webapps/access/WEB-INF/lib/access-server-rest-4.2.0.jar!/org/jfrog/access/server/rest/resource/system/SystemResource.class]: Unsatisfied dependency expressed through constructor parameter 0; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'backupSubResource' defined in URL [jar:file:/opt/jfrog/artifactory/tomcat/webapps/access/WEB-INF/lib/access-server-rest-4.2.0.jar!/org/jfrog/access/server/rest/resource/system/backup/BackupSubResource.class]: Unsatisfied dependency expressed through constructor parameter 0; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'backupServiceImpl': Unsatisfied dependency expressed through field 'importerExporter'; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'accessImporterExporterImpl': Unsatisfied dependency expressed through method 'setServerBootstrap' parameter 0; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'accessServerBootstrapImpl': Invocation of init method failed; nested exception is java.lang.IllegalStateException: Failed to bootstrap initial access credentials.
Thank you for the feedback #error404.
We ended up opening a ticket with Jfrog support (https://www.jfrog.com/jira/browse/RTFACT-18939) who was able to replicate the issue and subsequently marked the ticket as "Fix Version/s: 6.10.0"
Although not strictly stated, I assume this Fix Version update implies that the described issue will be remediated in the next release.

How to use .NET Core CLI behind a corporate proxy/firewall?

I have downloaded and extracted the .NET Core SDK zipped binaries, and added them to the PATH.
I'm able to create a new console project using dotnet new console, but when I try to add a dependency with dotnet add package DocumentFormat.OpenXml, I get the following error:
Writing C:\Users\boobsbr\AppData\Local\Temp\tmp2C7B.tmp
info : Adding PackageReference for package 'DocumentFormat.OpenXml' into project 'C:\projects\test\test.csproj'.
log : Restoring packages for C:\projects\test\test.csproj...
error: Unable to load the service index for source https://api.nuget.org/v3/index.json.
error: No such host is known
I've read in several places that I need to add some configuration to NuGet.config in order to set up the HTTPS proxy. Some people recommend using nuget.exe config -Set in order to set the values, but the executable is not present in the binary distribution folder, and I've also read that the dotnet.exe uses NuGet DLLs instead of calling the nuget.exe executable.
So I set out to edit the file located at C:\Users\boobsbr\AppData\Roaming\NuGet\NuGet.Config. Some people suggest just setting the proxy URL and the user and pass would be read from some system config, so I added the following line to the config file:
<add key="https_proxy" value="http://proxy_url:8080" />
And this is the message I got after trying to add a package:
Writing C:\Users\boobsbr\AppData\Local\Temp\tmpA7AF.tmp
info : Adding PackageReference for package 'DocumentFormat.OpenXml' into project 'C:\projects\test\test.csproj'.
log : Restoring packages for C:\projects\test\test.csproj...
info : GET http://proxy_url:8080/FindPackagesById()?id='DocumentFormat.OpenXml'&semVerLevel=2.0.0
log : Retrying 'FindPackagesByIdAsyncCore' for source 'http://proxy_url:8080/FindPackagesById()?id='DocumentFormat.OpenXml'&semVerLevel=2.0.0'.
log : No such host is known
info : GET http://proxy_url:8080/FindPackagesById()?id='DocumentFormat.OpenXml'&semVerLevel=2.0.0
log : Retrying 'FindPackagesByIdAsyncCore' for source 'http://proxy_url:8080/FindPackagesById()?id='DocumentFormat.OpenXml'&semVerLevel=2.0.0'.
log : No such host is known
info : GET http://proxy_url:8080/FindPackagesById()?id='DocumentFormat.OpenXml'&semVerLevel=2.0.0
error: Failed to retrieve information about 'DocumentFormat.OpenXml' from remote source 'http://proxy_url:8080/FindPackagesById()?id='DocumentFormat.OpenXml'&semVerLevel=2.0.0'.
error: No such host is known
Alright, so I tried adding a username, as suggested by other people, and the password should be automatically picked up from some system:
<add key="https_proxy" value="http://proxy_url:8080" />
<add key="https_proxy.user" value="boobsbr" />
And this is the failure message:
Writing C:\Users\boobsbr\AppData\Local\Temp\tmp839E.tmp
info : Adding PackageReference for package 'DocumentFormat.OpenXml' into project 'C:\projects\test\test.csproj'.
log : Restoring packages for C:\projects\test\test.csproj...
info : GET http://proxy_url:8080/FindPackagesById()?id='DocumentFormat.OpenXml'&semVerLevel=2.0.0
log : Retrying 'FindPackagesByIdAsyncCore' for source 'http://proxy_url:8080/FindPackagesById()?id='DocumentFormat.OpenXml'&semVerLevel=2.0.0'.
log : No such host is known
info : GET http://proxy_url:8080/FindPackagesById()?id='DocumentFormat.OpenXml'&semVerLevel=2.0.0
log : Retrying 'FindPackagesByIdAsyncCore' for source 'http://proxy_url:8080/FindPackagesById()?id='DocumentFormat.OpenXml'&semVerLevel=2.0.0'.
log : No such host is known
info : GET http://proxy_url:8080/FindPackagesById()?id='DocumentFormat.OpenXml'&semVerLevel=2.0.0
error: The local source 'C:\Users\boobsbr\AppData\Roaming\NuGet\boobsbr' doesn't exist.
Alright, then I tried adding a cleartext password:
<add key="https_proxy" value="http://proxy_url:8080" />
<add key="https_proxy.user" value="boobsbr" />
<add key="https_proxy.password" value="my_pass" />
And I got the same message as the previous try. I also tried using http_proxy instead of https_proxy, to no avail.
Some people say the password must be base64'd and encrypted, but the only way to do that seems to be through nuget.exe config -Set and I don't have nuget.exe.
I know the user:pass:url:port values work because I used them to get NPM talking to the NPM registry.
Maybe I'm bad at searching, but I cannot find clear documentation describing how to set up a simple configuration for a very common use case.
So, how do I configure the .NET Core CLI to use the corporate proxy/firewall?
Windwows 10 build: 15063
.NET Core SDK version: 2.1.402

Ensure that the 'dir.root' property '/var/lib/alfresco/alf_data_dev' is pointing to the correct data

We are doing the alfresco 5.1 installation in multiple servers in clone env.Except in one server ,we are seeing below error other 3 servers.To resolve this error we have done below steps but no luck.please note that below path was there in all servers.
1)Stop all shared servers
2)Drop database schema and create new schema.
3)Delete contents(contentstore & contentstore.deleted) inside /var/lib/alfresco/alf_data_dev
4)Start all shared servers.
07-28 07:01:30,864 ERROR [repo.admin.ConfigurationChecker] [localhost-startStop-1] CONTENT INTEGRITY ERROR: System content not found in content store.
2016-07-28 07:01:30,864 ERROR [repo.admin.ConfigurationChecker] [localhost-startStop-1] Ensure that the 'dir.root' property '/var/lib/alfresco/alf_data_dev_new' is pointing to the correct data location.
2016-07-28 07:01:30,867 ERROR [web.context.ContextLoader] [localhost-startStop-1] Context initialization failed
org.alfresco.error.AlfrescoRuntimeException: 06280002 Ensure that the 'dir.root' property '/var/lib/alfresco/alf_data_dev' is pointing to the correct data location.
at org.alfresco.repo.admin.ConfigurationChecker.check(ConfigurationChecker.java:263)
at org.alfresco.repo.admin.ConfigurationChecker.access$0(ConfigurationChecker.java:198)
at org.alfresco.repo.admin.ConfigurationChecker$1$1.doWork(ConfigurationChecker.java:186)
at org.alfresco.repo.security.authentication.AuthenticationUtil.runAs(AuthenticationUtil.java:555)
at org.alfresco.repo.admin.ConfigurationChecker$1.execute(ConfigurationChecker.java:182)
at org.alfresco.repo.transaction.RetryingTransactionHelper.doInTransaction(RetryingTransactionHelper.java:464)
at org.alfresco.repo.transaction.RetryingTransactionHelper.doInTransaction(RetryingTransactionHelper.java:352)

ClickOnce Application try to find an application manifest in a wrong location (strange parameters)

This is my third post on ClickOnce, but each of them has its own subject so I hope nobody minds this. I'm urgently migrating the existing app to the new server. I publish a ClickOnce application to a server (online usage only, not for install), and if I try to execute it via web browsers, I get a message box saying "Cannot continue. The Application is improperly formatted. Contact the application vendor for assistance.", the detail log of which includes below; (I masked some strings in the URL by *, as it was private information)
PLATFORM VERSION INFO
Windows : 5.1.2600.196608 (Win32NT)
Common Language Runtime : 4.0.30319.1
System.Deployment.dll : 4.0.30319.1 (RTMRel.030319-0100)
clr.dll : 4.0.30319.1 (RTMRel.030319-0100)
dfdll.dll : 4.0.30319.1 (RTMRel.030319-0100)
dfshim.dll : 4.0.31106.0 (Main.031106-0000)
SOURCES
Deployment url: http://**.**.***.173:10080/*****/ClickOnce/*********.application?comid=*****&userjpname=************&userfullname=************&canregist=True&canmanage=True&systemid=0
ERROR SUMMARY
Below is a summary of the errors, details of these errors are listed later in the log.
* Activation of http://**.**.***.173:10080/*****/ClickOnce/*********.application?comid=*****&userjpname=************&userfullname=************&canregist=True&canmanage=True&systemid=0 resulted in exception. Following failure messages were detected:
+ Exception reading manifest from http://**.**.***.173:10080/*****/ClickOnce/*********.application?comid=*****&userjpname=************&userfullname=************&canregist=True&canmanage=True&systemid=0: the manifest may not be valid or the file could not be opened.
+ Manifest XML signature is not valid.
+ The digital signature of the object did not verify.
COMPONENT STORE TRANSACTION FAILURE SUMMARY
No transaction error was detected.
WARNINGS
There were no warnings during this operation.
OPERATION PROGRESS STATUS
* [2012/07/24 13:16:39] : Activation of http://**.**.***.173:10080/*****/ClickOnce/*********.application?comid=*****&userjpname=************&userfullname=************&canregist=True&canmanage=True&systemid=0 has started.
ERROR DETAILS
Following errors were detected during this operation.
* [2012/07/24 13:16:39] System.Deployment.Application.InvalidDeploymentException (ManifestParse)
- Exception reading manifest from http://**.**.***.173:10080/*****/ClickOnce/*********.application?comid=*****&userjpname=************&userfullname=************&canregist=True&canmanage=True&systemid=0: the manifest may not be valid or the file could not be opened.
- Source: System.Deployment
- Stack trace:
at System.Deployment.Application.ManifestReader.FromDocument(String localPath, ManifestType manifestType, Uri sourceUri)
at System.Deployment.Application.DownloadManager.DownloadDeploymentManifestDirectBypass(SubscriptionStore subStore, Uri& sourceUri, TempFile& tempFile, SubscriptionState& subState, IDownloadNotification notification, DownloadOptions options, ServerInformation& serverInformation)
at System.Deployment.Application.DownloadManager.DownloadDeploymentManifestBypass(SubscriptionStore subStore, Uri& sourceUri, TempFile& tempFile, SubscriptionState& subState, IDownloadNotification notification, DownloadOptions options)
at System.Deployment.Application.ApplicationActivator.PerformDeploymentActivation(Uri activationUri, Boolean isShortcut, String textualSubId, String deploymentProviderUrlFromExtension, BrowserSettings browserSettings, String& errorPageUrl)
at System.Deployment.Application.ApplicationActivator.ActivateDeploymentWorker(Object state)
--- Inner Exception ---
System.Deployment.Application.InvalidDeploymentException (SignatureValidation)
- Manifest XML signature is not valid.
- Source: System.Deployment
- Stack trace:
at System.Deployment.Application.Manifest.AssemblyManifest.ValidateSignature(Stream s)
at System.Deployment.Application.ManifestReader.FromDocument(String localPath, ManifestType manifestType, Uri sourceUri)
--- Inner Exception ---
System.Security.Cryptography.CryptographicException
- The digital signature of the object did not verify.
- Source: System.Deployment
- Stack trace:
at System.Deployment.Internal.CodeSigning.SignedCmiManifest.Verify(CmiManifestVerifyFlags verifyFlags)
at System.Deployment.Application.Manifest.AssemblyManifest.ValidateSignature(Stream s)
COMPONENT STORE TRANSACTION DETAILS
No transaction information is available.
My server address is http://**.**.***.173:10080, and a clickonce app is published in http://**.**.***.173:10080/*****/ClickOnce folder.
I assume it tried to find an application manifest file (.manifest) with these several weird parameters (or query strings?) such as comid, userjpname, userfullname, canregist, canmanage, True and systemid, and thus it returned an error.
In my deployment manifest file, the location of the application manifest file is specified as below. No idea where these parameters came from.
<dependentAssembly
dependencyType="install"
codebase="MYAPPNAME_9_9_9_99\MYAPPNAME.exe.manifest"
size="8532">
<assemblyIdentity
name="MYAPPNAME.exe"
version="1.0.1.43"
publicKeyToken="*************"
language="neutral"
processorArchitecture="msil"
type="win32" />
Did you try to sign the application and deployment manifests again?
Reading you description again, I'm a bit confused.
First you create an application manifest.
Then you sign it.
Then you create a deployment manifest and explicitly point it to your application manifest.
Then you sign this, too.
(btw: you have to do the signing part every time you change something.)

Configuration Error on custom config section -- could not find the file specified?

This has worked fine locally for months and just broke on deployment to the server (discountasp). I'm developing with .net 3.5 and asp.net mvc. I've previously successfully hosted asp.net mvc applications on this same account (but without the config section).
I have a custom config section set up in my web.config file that's causing the following error on load:
Configuration Error
Description: An error occurred during the processing of a configuration file required to service this request. Please review the specific error details below and modify your configuration file appropriately.
Parser Error Message: An error occurred creating the configuration section handler for SCConfig: The system cannot find the file specified.
Source Error:
Line 179:
Line 180: <SCConfig>
Line 181: <authentication>
Line 182: <groups Administrators="Administrator" Auditors="Auditor" Auditor_Supervisors="Auditor Supervisor" Auditor_Externals="External Auditor" Biz_Users="Business User"/>
Source File: E:\web\irstagelert\htdocs\web.config Line: 180
Version Information: Microsoft .NET Framework Version:2.0.50727.3074; ASP.NET Version:2.0.50727.3074
The part of the web.config where I define the config handler is:
<section name="SCConfig" type="com.lerteco.SoxCompliance.ConfigHandler.CustomTagHandler, com.lerteco.SoxCompliance.ConfigHandler"/>
I've played with a few different iterations of the type, but they all produce the same error message as above.
The top of the class file is:
namespace com.lerteco.SoxCompliance.ConfigHandler
{
[Flags]
public enum GroupCodes
{
....
}
public class CustomTagHandler : IConfigurationSectionHandler
{
public object Create(object parent, object configContext, XmlNode section)
{
And I've confirmed that on the host the /bin/ directory contains both the com.lerteco.SoxCompliance.ConfigHandler.dll and ....pdb files.
Thanks for any help,
James
Jacob was right; it wasn't the handler file itself, but an error being generated from within the handler.
I ended up writing code and moving around return statements until I found the problem.
Specifically, I created an RSACrytpoServiceProvider() and got the error detailed in this posting RSACryptoServiceProvider CryptographicException System Cannot Find the File Specified under ASP.NET .
James

Resources