Don’t delete the “Form Templates” library if you use InfoPath Form Services.

Thursday, 26 August 2010 15:54 by Greg

In SharePoint 2007, this folder exist at the root of a site collection only and is used to store all InfoPath published forms.  If it was deleted, and it can be by anyone with owner rights to that site, it will cause all kinds of problems publishing InfoPath forms for the entire site collection.  You can publish, but your forms cannot be web-enabled.  For example, if the library has been deleted, you will see the following error when attempting to publish even the most basic InfoPath form:

“The form template is browser-compatible, but it cannot be browser-enabled on the selected site”.

image

Clicking the error message reveals additional data that will send you down a different rabbit hole, implying that Form Services are not installed or activated.

image

The first thing you should check is to see if a Form Template library exists at the root site of the site collection.  Click on “View all site content”.

image

With no Forms library at this level, SharePoint does not have the storage location it needs to hold a browser-based form.  The fix is relatively simple and requires SharePoint Designer 2007.

  1. Open the site in SharePoint Designer
  2. In the folder list, select the root node and click File | New to bring up the New dialog.
  3. Select the SharePoint content tab, then Document Libraries.
  4. The name for the library is important, and needs to be called “FormServerTemplates” (without the quotes).
  5. Click OK
  6. Right click on the newly created “FormServerTemplates” library and select properties.  Uncheck the box on the Settings tab to “Use a template for new documents”, if this is checked.

image

image

This will correct the issue and you will be able to publish a browser-enabled form in InfoPath:

image

Its also a good idea to go into the site collection and remove the newly created forms library from the Quick Launch, so folks don’t get any ideas for doing things they shouldn’t.

Obviously, if you are receiving the above error messages and the “Form Templates” library DOES exist, there may be issues with your server configuration or InfoPath deployment that you should follow up on.

Note: Don’t ask me why SharePoint installs the form library “Form Templates”, but the fix requires you to name the new folder “FormServerTemplates”.  It just does.

Tags:   ,
Categories:   Professional
Actions:   E-mail | Permalink | Comments (0) | Comment RSSRSS comment feed

TechEd; a n00b’s guide

Sunday, 13 June 2010 20:43 by Greg

As my first TechEd comes to a close here in New Orleans I feel compelled to pass along what I’ve learned about the “TechEd experience”.  While I read a lot and received a lot of advice, there are still lessons learned that I will use myself on future conferences.

  • Set your learning goals.  TechEd is HUGE.  Make sure you get the most for your (or your employer’s) dollars by coming up with a list of things you want to learn.
  • Plan your sessions.  TechEd is HUGE, both in the number of sessions (over 1000 for this one) and depth of topic.  Use the schedule builder to get a starter agenda.
  • Realize you can’t do it all.  TechEd is HUGE!  There may be 5 or 6 session slots per day, but this doesn’t leave room for hands on labs, vendor presentations/discussions, or just down time.
  • Plan your trip.  Decide when to arrive and stay based on your schedule and goals.  Find a hotel that is on the conference list as shuttle buses are available for those;  you may not need a rental car.
  • Plan for a little fun.  Research where the conference is and pick one or two things to do.  Sample the local cuisine, visit an attraction, or find a place to walk from your hotel… something to give you a break from sessions and to enjoy the host city.

Once the planning is done, there are a few more things to consider

  • You are an army of one.  And you will carry everything with you.  You’ll get a backpack or you may want to bring your own.  Keep it light, you’ll be living out of it for 4 days.  And remember it will be filled with documentation, tee shirts, books, or other prizes along the way.
  • Which laptop to bring?  Consider a netbook, tablet PC, or slate PC.  Your intention should be to take notes, do some light web surfing and e-mail, not playing WoW between/during sessions.
  • Power considerations.  Plan your battery life.  Outlets are often available in between sessions, occasionally during, and not at lunch.  Tweak your devices for max power savings BEFORE you arrive.
  • Leave work at work.  This conference isn’t cheap.  Get your money’s worth by actually attending and not being a remote worker.
  • Bring business cards, but not a ton.  They are good for some vendor prize giveaways (when they don’t already scan your badge) and for exchanging info with your peers.
  • Wear comfortable shoes!
Tags:  
Categories:   Professional
Actions:   E-mail | Permalink | Comments (0) | Comment RSSRSS comment feed

IIS performance considerations

Monday, 7 June 2010 23:48 by Greg

Thomas Deml from Microsoft gave a great discussion on “My website is slow!  And I don’t know what to do about it!”  Its an aptly named topic.  I spend a great deal of my day looking at performance issues with the shotgun approach.  If key performance indicators aren’t out of whack, figuring out what to do next is a challenge.

Thomas went into detail on a number of things to examine and try.

First off, if you are not yet using Fiddler, go get it.  The tool examines network traffic to and from a client and is a key tool to helping understand web page load times.  Specifically, there is a WCAT (web capacity analysis tool) extension that can be used to simulate load on a server.  While less precise than other stress test tools, this along is better than nothing and looks to help with ensuring the basics are set.

I’m going to interject a few items from my own experience, including the fact that many of these options are available for Windows Server 2003… not just Server 2008.

IIS tweaks

  • Ensure default.aspx is your top default document.  Its not a huge change, but with each document request where a document is not specified, like your home page, IIS checks this list in the order shown.  So if you are running .NET or PHP, make sure that handler is listed first.
  • Turn off authentication or SSL if not used.  This is especially true with home and static pages.
  • Use the browser cache!  On static content pages and folders, set content expiration to 365 days.  This sends a HTTP 304 response on content requests.  As the browser requests the file, if it receives the 304 the file is not downloaded.
  • Removed x-powered-by headers.

Server 2008 specific settings

  • Use IIS output caching of semi-dynamic content.  These are non-user specific settings that will span multiple sessions and help improve performance.
  • Turn off request tracing except when troubleshooting performance.

Things you can (and should) do with .NET.

  • Use the ASPNET compiler tool to pre-compile the web application.  Normal operating mode is the first user to request a page will cause that page to JIT, or just-in-time compile.  This means that the first user to hit the page gets the delay, which is often not acceptable.  This tool will precompile all pages within the application at once.
  • Watch object size.  An object larger than 85k is treated differently in the .NET memory management model and is garbage collected differently (less frequently, if at all).  Smaller objects with shorter life spans will improve performance.
  • Perform IIS tuning.  By default IIS will handle a max of 12 concurrent connections, which may be fine for entry level sites.  Maybe not so much in the real world. 
  • As much as possible, don’t use Viewstate.  This is different than ControlState.  Viewstate adds a lot of bytes to the page.

Improving performance by reducing bytes transferred.

  • Use output caching.  The demo showed a 5x improvement in performance by just flipping the switch.
  • Use the free Microsoft content delivery system for standard JavaScript libraries for Ajax, jQuery, and the .net framework.  The code files are a standard component of the .NET framework and this will offload its download from your server.  Further, it will span servers and applications and will help cache these larger .js files.
  • Crunch production ready JavaScript and .css files with AjaxMinify or Doloto.  This removes comments and simplifies variable names.  The net result is file reduction and smaller downloads, but should be used for production deployments only. 
  • Ensure that image files are not being scaled by HTML.  If an <img> tag specifies a width of 128 bytes, that should be the size of the image.  Otherwise you are downloading extra bytes (slow) and forcing the browser to do the resizing for you (slow).
  • On the topic of images, use .jpg files for photos and .png for graphics files.  Remember to remove .jpg file metadata, as this adds bytes that doesn’t help anyone.

And the biggies; ensure .css tags are at the top of the file and <script> tags are at the bottom.  Native behavior of IIS suspends all other downloads across all download threads when it encounters a script tag.  If if this is a big chunk of Ajax JavaScript, it will give the appearance that the server is thinking long and hard on your page request.  Given the attention span of the average Internet user is 4 seconds, that may be too much.

This was a great session and a lot of good tools and techniques to try out.  Well done Tom!

Tags:   , ,
Categories:   Professional | Tools
Actions:   E-mail | Permalink | Comments (0) | Comment RSSRSS comment feed

Safety at TechEd

Monday, 7 June 2010 08:49 by Greg

This year’s TechEd backpack features a number of safety features that may prove useful in surviving the week. 

IMAG0257

Aside from numerous pockets that could store (and conceal) just about anything, the pack comes equipped with an aluminum water bottle on a carabineer and what appears to be a drogue chute.

IMAG0258

It’s a good thing to slow down, especially in this fast paced technology wonderland we all live in, though I question the thought behind the need to deploy something like this indoors.  I may test it out next time while biking.

UPDATE:  It may not be a chute at all.  After closer inspection it may actually be one of the following:

What do you think?

Tags:  
Categories:   Professional
Actions:   E-mail | Permalink | Comments (0) | Comment RSSRSS comment feed

Now pre-boarding for MS TechEd, 2010

Monday, 7 June 2010 08:19 by Greg

As I sip my coffee, clear the fuzz from my brain, and reflect on the day of travel yesterday, flying from Norfolk, Virginia to New Orleans, I find myself wanting to slap my forehead.  Or someone.  While this is my first large technical convention it is not my first time traveling to a new area with a lot of people.  The flights were find, it was at the airport that I actually wondered if anyone told New Orleans that 2,000+ nerds were descending into the city.  I say that because, while still at the airport, there wasn’t a clue which of the 14 baggage pusher was ours, and the recommended, pre-booked airport shuttle was in total disarray.  Ok, so finding one’s luggage is always a challenge at the airport.  But we are nerds, and everyone was trying to connect to the airport’s website to find out where we should be.  I’m pretty sure New Orleans has other large events during the year--- seem to remember seeing pictures, um, reading stories about it.  All was good in the end.  We (my coworkers and I) eventually ignored the signs and just started asking people that looked like they worked there.  And despite the flight delays and airport mishmashup, we even managed register ahead of time… by going straight to the convention center before our hotel.  I can imagine those lines this morning.

The second reason why I think the city wasn’t ready for the nerd invasion was our hotel.  The Hilton Riverside is a beautiful city and they had plenty of staff on hand to greet us.  It was at check in that I was told they only had smoking rooms with king size beds.  What?  This was booked months ago.  I never said I wanted a king room, but did say no smoking.  How did the wires get crossed?  It wasn’t a big deal to be switched to a queen, non-smoking room.  It just felt like that wasn’t their first choice.

My point is all of this seemed like a big mess up in planning.  All of these organizations had my information and presumably that of my peers.  They knew we were coming.  Why did they seem so surprised when the data turned out to be true?  This is, after all, a information technology conference.  I’m sure I’ll geek out on all the new toys and techniques that I’ll see throughout the week.  But it highlights the more fundamental issues; if you have all the information available any way you want it, are you going to do anything meaningful with it?

Tags:  
Categories:   Professional
Actions:   E-mail | Permalink | Comments (0) | Comment RSSRSS comment feed

SharePoint 2007 Update error

Friday, 14 May 2010 14:41 by Greg

A little background is needed for this one. I was rebuilding a development server to match updated QA and PROD servers. This is a physical server running Windows 2003 x64. While installing WSS 3.0 February Uber Cumulative update (KB 961766) and Office Servers 2007 February Uber Cumulative update (KB 961576) I received the following error in the upgrade.log file:

[SPIisWebSiteWssSequence] [ERROR] [5/14/2010 10:13:05 AM]: Action 3.0.3.0 of Microsoft.SharePoint.Upgrade.SPIisWebSiteWssSequence failed.
[SPIisWebSiteWssSequence] [ERROR] [5/14/2010 10:13:05 AM]: InstallAspNet 891541206 failed.
[SPIisWebSiteWssSequence] [ERROR] [5/14/2010 10:13:05 AM]: at Microsoft.SharePoint.Upgrade.EnsureAspNetScriptMapInstalled.Upgrade()
at Microsoft.SharePoint.Upgrade.SPActionSequence.Upgrade()

The highlighted number above references an IIS 6.0 site ID, so the error means the patch was unable to work with ASP.NET to modify a particular web application.

This thread helped me understand and fix the error. It seems that particular web application was running in 32-bit mode, where IIS is running in 64-bit mode. I think, more specifically, that ASP.NET was bound to this web application in 32-bit mode and needed to be rebound elsewhere.

The actual fix is to re-register ASP.NET. The key that was missing from other articles I read is that you need to do this from the Framework64 directory on the server. So the fix is actually running this command:

%windir%\Microsoft.NET\Framework64\v2.0.50727\aspnet_regiis –i

Re-running the patches produced a clean upgrade.

Tags:  
Categories:   Professional
Actions:   E-mail | Permalink | Comments (0) | Comment RSSRSS comment feed

VMWare guest OS mouse cursor does not track with correctly

Tuesday, 12 January 2010 23:31 by Greg

Found this out the hard way doing a demo this morning.  I am using VMWare Workstation 6.5 running on Windows 7 Ultimate.  The guest OS is Windows Server 2003.  The issue is the mouse pointer actual location was not the same as where the pointer was on the screen (a parallax error).

I’ve rebooted both OS’s and ensured the screen resolutions made sense.

The issue appears to be with the host OS, Windows 7.  For demo’s I often increase the font scaling of both my guest and host operating systems, so things are readable on projector screens.  The moment I restored the Windows 7 (host) font scaling back down to 100% everything was fine.

Tags:   , ,
Categories:   Professional
Actions:   E-mail | Permalink | Comments (0) | Comment RSSRSS comment feed

HTML/Rich Text E-mails not showing up in Outlook Express

Monday, 4 January 2010 20:08 by Greg

There is a setting on Outlook Express that forces all messages to be displayed as plain text.  This is especially true on Windows Server 2003.

image

Now, before I get flamed the ONLY reason I am running Outlook Express on a server is for a demo.  I do not, would not recommend running OE on a server unless you have a really good reason.

Tags:   ,
Categories:   Professional
Actions:   E-mail | Permalink | Comments (0) | Comment RSSRSS comment feed

What Version of SharePoint are you running

Monday, 4 January 2010 10:19 by Greg

This is the perfect reference that lists all versions of SharePoint, the various cumulative updates, patches, and service packs, links and all.

The easy way to determine what version number you are running is to go into Central Administration | Operations, then click "Servers in Farm".  You'll see the version number next to the server name and roles.

 

Tags:  
Categories:   Professional
Actions:   E-mail | Permalink | Comments (0) | Comment RSSRSS comment feed

Receiving double e-mails in Outlook 2007

Tuesday, 8 December 2009 14:46 by Greg

This past weekend I finally upgraded my laptop from Windows 7 release candidate (build 7100) to the letterbox version (ultimate). Somehow I manage to find an excuse to reload my operating system every 6 months or so, so I have the pattern down pat. Image the hard disk, write down all my installed apps, copy over the data folders, export bookmarks, e-mail settings and rules, etc. Then wipe the drive and install clean. I will say that the Windows 7 install process was probably the most smooth I've had to date. I was reinstalled and fully patched within an hour, taking only another two to reload my apps and copy over data.

The only hitch was on Outlook 2007, which I use with my GMail account. It installed fine. I changed the data file over to my backed up copy and all my e-mail was fine. But for some reason, every time I would connect to GMail and download, it would download two copies. Reading online I found posts that suggested you check the box to leave mail on the server, which was already the case. I deleted my GMail account and recreated it in Outlook, still nothing.

Then I noticed something... it wasn't downloading e-mail for every folder, just the ones with rules on them. Bingo!

Sure enough, as part of my restore process I reimported my Outlook rules for moving things to various folders. That, it turns out, is now unnecessary. In prior versions of Outlook (and possibly pre SP2) the rules were stored as part of the application and didn't carry over with the data file. That's no longer the case; your rules are now stored in the data file and backed up when you back e-mail up. Kinda cool. So once I removed the duplicate rules everything started working as expected.

Tags:   ,
Categories:   Professional
Actions:   E-mail | Permalink | Comments (2) | Comment RSSRSS comment feed