Error after moving pimcore to remote server - pimcore

I have moved a pimcore 1.4 site to a new server, all files and database and although the admin works fine, the following error is thrown trying to access any public facing pages.
Argument 1 passed to Pimcore\Model\Object\Localizedfield::setClass()
must be an instance of Pimcore\Model\Object\ClassDefinition,
null given, called in
/xxxxxx/models/Object/Listing/Concrete/Dao.php on line 122

Are you sure that all files were moved correctly to new server? Especially check website/var/classes directory and content of the website/var/config/system.xml file.

After some investigation, I discovered that not all of the database tables had imported.
I also found other users deep in the pimcore forums with the same issue, so this is the first place to check.

Related

Sharepoint Rest API, Get files from a list is throwing unknown 500 errors only when a file is present

CrossPost from the sharepoint SE https://sharepoint.stackexchange.com/questions/299076/sharepoint-rest-api-get-files-from-a-list-throwing-unknown-500-errors-only-when
I've been setting up an app to query a Sharepoint Document list for files (amongst other things). Querying {{mainLink}}sites/{{subsite}}/_api/web/lists/Documents/Files on postman with the following headers works perfectly - so long as no files are present.
The moment I upload and check in a file to one of the folders on this sharepoint directory, I immediately get error 500, "code": "-1, Microsoft.SharePoint.Client.UnknownError"
The moment I delete said file, I can again query the list and get back the folder metadata just fine.
When I test the same code against our internal sharepoint site (the errors are coming from integrating with a client of ours) it works without a single hitch, and now I'm just confused. my guess is that there is some setting on their system or some optional parameter on my postman that needs to be set to make file requesting work properly. My question is does anyone know why the 500 errors are conditionally happening and/or how to fix them?
I also get the same error going through the folder Web/Lists(guid'1234')/files('1234')/Children
I've now discovered that I don't get the errors when going through the relative folder url {{mainLink}}sites/{{subsite}}/_api/Web/GetFolderByServerRelativeUrl('Documents/In')/Files is working fine for some reason. I can work with the one functioning endpoint, but I'd still like to know why all the other perfectly valid requests fail the moment any files are uploaded to the sharepoint site

Script file file not being loaded through ScriptLink custom action

I am having trouble with script link custom actions. I am building a SharePoint app, and I successfully added a site-scope custom action pointing to a script file in the Style Library, as I want this particular script to be injected to all the pages of my SharePoint site.
While it works in certain situations, the script link injection breaks without apparent reason under certain conditions. For example, when I arrive on my root web, the script will be injected. But, if I go to a certain link within this web (for example Home or Site Contents), the file that is supposed to be injected will simply not be fetched from the Style Library and therefore never be injected, resulting in an uncaught ReferenceError when I try to call one of the script's function. The weirdest part is that a page refresh through Ctrl+F5 will fetch the script file without any problem, regardless of the page's ability to originally fetch the script file when first accessed. It will keep the script until it is accessed through a link again.
I've read up on Sharepoint caching, thinking it may be the cause of my problem, but the trouble is that these articles mostly talk about cache-induced errors when updating a file, while I am only trying to access it.
One thing to note is that, due to limitations, I am adding the script link custom action through code. Here's an example of what this kind of call currently looks like in my app:
context.Load(context.Site.UserCustomActions);
context.ExecuteQuery();
customAction.Name = "MyScriptLink";
customAction.Location = "ScriptLink";
customAction.Sequence = 100;
customAction.ScriptSrc = "~SiteCollection/Style Library/MySite/MyScript.js";
customAction.Update();
context.ExecuteQuery();
So, what's going on here ? Why is my script no injected on certain pages ? Why does a refresh on these exact same pages manage to fetch the file without any problem ?
Found it ! Three words: Minimum Download Strategy. Disable it, it messes with you page redirect behavior within a SharePoint site (either through code or through site settings)
Edit: If you still want MDS enabled on your site, there is a solution

Getting current IIS app name with ColdFusion

I'm trying to get the current IIS application name in my ColdFusion scripts but I have no idea where to get this information. I want to use the app name to communicate with IIS using cfexecute by running appcmd.exe.
<cfexecute name="c:\windows\system32\inetsrv\APPCMD" arguments="add site /name:#arguments.sitename# /bindings:""http/*:80:#arguments.binding#"" /physicalPath:""#arguments.physicalPath#""" timeout="60"></cfexecute>
The problem is that I can't be sure what the app name is. I could save it somewhere in a db but i'd really like to get it dynamically so the script can run without configuring the appname. If I could be able to fetch it from somewhere (or maybe based on the current hostheader) I could dynamically fill
/name:#arguments.sitename#
I've tried to search how to do this by using PHP and JSP examples, but so far, i haven't been able to find any method on getting the app name.
Following on from #Miguel-F's link (http://www.iis.net/learn/get-started/planning-your-iis-architecture/iis-7-and-iis-8-configuration-reference) in the comments above, there's a file in %windir%\system32\inetsrv\config\ called applicationHost.config that you could read in - this file contains the collection of sites that's configured in IIS. Is that the sort of thing you're after?

XPages error when running in web browser and saving new document

So I've finally move my application from development(inaccessible through internet) server to production(accessible through internet) server and I got the following runtime error whenever I'm trying to save a document:
Error while executing JavaScript action expression
Script interpreter error, line=23, col=10: [TypeError] Exception occurred calling method NotesXspDocument.save() not allowed to access or modify file: C:\WINDOWS\TEMP\notesC053A6\xsppers\22\DHRRDLYBXJ
not allowed to access or modify file: C:\WINDOWS\TEMP\notesC053A6\xsppers\22\DHRRDLYBXJ
I've done some testing to see where this would occur and found that it only happen when running the application in a web browser (including the Notes 9 web browser) and creating a new document and saving it.
If I run the application via XPiNC, create a new document and save, I'm able to save the document. And this document can later be edited and saved whether in XPiNC or web browser.
I'm not aware of this problem because during development I usually only test in notes client. When it come to web browser, I'll just create a local copy to test because the development server does not allow access through web browser.
Is there any server setting that I should change? I'm not admin but I could inform my boss to change. Thanks.
EDIT
After further testing, I found that uploading a file could be causing the problem. My XPage has fileUpload control for user to upload attachment with the document. But since it worked on XPiNC I need to know why it doesn't work in web browser and the solution to this.
Check to see if the user running the service of the domino server has full access rights to the c:\windows\temp folder
If your server is running Windows 2008 and no specific user is added to run the service.
Make sure that both system and Services has full access to that folder.

Kentico Forcing New Website

I have backed up the Kentico Database and website from one of our Live servers and placed it within our Dev server and configured the website in IIS.
When I navigate to the website, it currently asks for New installation.. Whereas it should just show me the current website.
How do I get it to show the website?
EDIT
The following error occurs when going ahead and creating a new instance with the restored Database:
Restore the backed up database and add database connection string to the web.config of the application. Simple as that :)
Who or what is set as the DB objects owner/schema in the DB? Does this match the setting in Site Manager (or, CMS_SettingsKey table)? I would make sure these two match.
Another option is that the connection string was not initialized by .Net - I would do a dummy change in the web.config file to force the app restart and/or also clearing the .Net cache.

Resources