Mittwoch, 7. November 2012

Unsupported namespace in InfoPath code

System.NullReferenceException: Object reference not set to an instance of an object.
at Microsoft.Office.InfoPath.Server.Converter.DetectUnsupportedNamespaces.VerifyNamespace(String ns, String nodeName, ICollection`1 problems)

at Microsoft.Office.InfoPath.Server.Converter.BusinessLogicScanner.<>c__DisplayClass2.b__1(MethodBase method)
at Microsoft.Office.InfoPath.Server.Converter.BusinessLogicScanner.VisitMethod(MethodBase method, MethodInfoVisitor methodVisitor)

....

You are using custom code in InfoPath, and you are using code in your project that doesn't have the same namespace as the form.  For example a helper function that you've included in your code.
When InfoPath Forms Services attempt to validate your form, it finds that your form template contains reference to code that doesn't have a namespace!
Solution:
Just create a namespace for the helper class, or move the helper class under the namespace of the form's namespace.

Mittwoch, 23. Mai 2012

Data is Null

The SharePoint item being crawled returned an error when requesting data from the web service. ( Error from SharePoint site: Data is Null. This method or property cannot be called on Null values. )

I found the code:
web.SiteGroups.Add(groupName, owner, null, null);

Solution:

It seems that the "default user" parameter is not the culprit here after all, but the fourth parameter is the one that actually causes this error. This is a description parameter, and even an empty string is OK. See this Microsoft Support article http://support.microsoft.com/kb/2323206

Dienstag, 13. März 2012

Form Template's status remains forever in 'installing' or 'deleting' state

Form template’s status never leaves “Installing…”, “Deleting…”, “Upgrading…”  or “Removing…” states
These states seem to indicate that you're running a multiple-machine server farm, and on your server farm, you're running into some issues in propagating changes to all of the machines.  If you have not done so already, I highly recommend turning on the following services on each machine: SPAdmin, and SPTimerV3 You can do this by running:

                net start SPTimerV3
                net start SPAdmin


On each machine (If you are doing this on a SharePoint Farm , you want to make sure the Timer Service is running on all the Servers on the Farm).  Net start is a ensure semantic, so this will not inadvertently toggle or cause any damage if run on a machine where the service is already started.  Now that that's done, you can go on to correcting the problems that you have.

From Central Administration, go to the Operations page, under the Global configuration group, click on Timer Job Status.  On that page, look for timer jobs that have the name in the following formatting.  If you filename is FOO.xsn, it will look like:
Windows SharePoint Services Solution Deployment for "form-FOO.wsp"

See if there was a failure.  If so, go back a page, and go to Timer Job Definitions.  Drill down in the timer job definition that you care about and you can perform the following:


Generally:
  1. Try to restart the job if that is available.
  2. If restart is not available, delete the job, then attempt your initial action again .