PowerShell Web Services (Management oData IIS Extensions)? - web-services

There are references to this "Loch Ness" feature across Microsoft's announcements for both PoSh3 & 4; however, I am unable to locate useful, current documentation on PSWS. I even went as far as to spin up a VM and installed related roles, features, and downloadable binaries from Microsoft's referenced sites. The only content, binaries, and help that I could find is a year old and is very poorly documented. Microsoft's own MSDN pages about Management oData IIS Extensions is still incomplete. (and doesn't work on W2k12 or W2k12R2) While another section of MSDN covers the oData classes, it does not cover how to utilize the PSWS / IIS extensions with the required schema designer...etc.
All that so you know that I've done the research but am unable to find sufficient & current documentation on how to employ PSWS / Management oData IIS extensions. Does anyone know who to contact within Microsoft to get this information? Or has anyone recently used the oData / PSWS Schema Designer to create a PoSh odata service?
TIA.
-Eric

Have a look in the url below if you haven't already. there's a doc inside the zip file.
http://archive.msdn.microsoft.com/mgmtODataWebServ/Release/ProjectReleases.aspx?ReleaseId=5728

Here's a newer link to the MSDN doc:
http://msdn.microsoft.com/en-us/library/hh880865(v=vs.85).aspx

Related

Offline wiki-like authoring tool

Does anyone know if there is a help authoring tool out there that can produce help documentation for a software product that looks like a wiki? We are currently using the Confluence wiki engine, which is absolutely brilliant and we were wondering if there is anything like that but without the need for an Apache server. Something stand-alone that can give our users the help documentation they need. We have used help authoring tools and they all seem so clunky compared to a wiki.
Use Wiki on a Stick.
Its a single .html file written in Javascript/html and saves the changes onto itself.
You don't even need Apache. Awesome tool!
How about Juli? It generates static HTML so you can browse documents by browser only.
It is used for:
Juli documentation itself.
Edgar project documentation (another my OSS project).
My personal wiki/blog. I'll show later since new users can only post two links(stackoverflow limitation)

Is there any documentation on TFS Web Services?

I am looking for any information on the Microsoft TFS Web Services. First I know accessing the Microsoft TFS Web Services directly is not supported and Microsoft provides no documentation for doing this. Therefore I am not expecting any Microsoft support or assistance here.
I know all about the .Net API available for TFS which only works on Microsoft Operating Systems. I have used these many times on Windows, however I need to do non-Windows work to access TFS, I cannot use .Net and I cannot use a Proxy (or "shim") to be installed on a Windows computer to provide Web Services for the .Net API.
I know Teamprise reversed engineered the web services and they successfully used this knowledge to make a very good cross platform Team Explorer and command line implementation in Java to access TFS. So good in fact they were purchased by Microsoft and the product rebranded and rereleased as Microsoft Visual Studio Team Explorer Everywhere.
I have also tested the .Net API against Mono on several non-windows platforms and they are not compatible. The initial NTLMv2 authentication is using calls not supported by Mono. They appear to be, understandably, making Win32 specific calls for NTLMv2 support.
Therefore before I go to the trouble of reverse engineering them for myself, and dealing with NTLMv2 to do it. I am hoping that there is some hidden or buried information on the web that someone may have documented some portion of the web services for TFS from 2005, 2008 and/or 2010.
Please no comments or posts about how this is not recommended or supported by Microsoft, that I should find a way to use the .Net API, or suggesting the Proxy/Shim is the best solution. I am fully aware of the Microsoft's official stance on this, and what the supported workarounds would be.
I'm not aware of any documentation for the TFS web services, but I can share some tips on calling them.
The NTLM authentication you mention is really a separate layer: you must authenticate to IIS before it lets you call TFS web services. I'm not aware of any Open Source software that will do NTLM auth for you, but TFS 2010 makes it easy to enable "Negotiate" authentication (SPNEGO on Wikipedia, Authentication by using Kerberos Ticket on MSDN). Negotiate supports both NTLM and Kerberos subsystems, and there may be some existing software you can use to drive it using the system's Kerberos libraries (I think curl does it). If you had to build it yourself, it would probably be easier to go the Negotiate-with-Kerberos route.
Once you're authenticated, you can start calling services. Start by pulling down the WSDL for each service (stick a "?wsdl" suffix on each endpoint URI). Hop over to where TFS is installed and explore the web application directory for endpoints. There are several versions of some endpoints for back compat with TFS 2005 and 2008, but usually new versions are not redundant (they add new stuff). You might have a favorite SOAP client library already (there are many for Java), but I can't really recommend any because we wrote our own at Teamprise.
Services like version control, build, and common structure are easy to discover via WSDL. Most the operations have obvious names, but the complex type fields are often super-abbreviated. The best way to figure which methods to call when is to watch the VS TFS client or TEE with Fiddler or Wireshark or some other HTTP inspection program. TFS VC does do things like file uploads/downloads outside the web services (watch a network trace to see the multi-part MIME upload process and be sure you're sending the right values if you implement this).
A note of caution on the work item tracking web service: this one is going to be extremely hard to master. The WIT design involves the client pre-querying the server for large amounts of schema-less metadata, which is saved on the client (but refreshed incrementally as more web service calls are made). This metadata drives all the client side behavior about work items (what fields are in a work item type, the type of a field, which values are allowed in fields, the rules that run when they change, etc.) and it will take a long time and serious study to build the client behavior to bring a work item to life. Once you have a work item, sending it to the server for update via web services is easy.
It's a lot of work, but it's possible to do incrementally, for example, if you only need some VC features. The TEE team is working on making access from other platforms easier. Please contact Martin Woodward (martin.woodward#microsoft.com) if you have any questions or suggestions in this area.
There is a Java version of the TFS SDK that will run on Linux, Mac, and Windows. It is the SDK that Teamprise uses.
http://blogs.msdn.com/b/bharry/archive/2011/05/16/announcing-a-java-sdk-for-tfs.aspx
Coding directly against the TFS webservices is not supported (even though people have done it). MSFT could break the interface without letting you know in a service pack or other hotfix. Sometimes there aren't other options, but if the Java SDK works for you, I'd try to use that first.
There is good documentation now: https://www.visualstudio.com/integrate/get-started/rest/basics

Accessing Sitecore content from ASP.NET

In one of my project I am trying to retrieve some content from Sitecore (multilingual). Can anyone here point me to the right direction/ best way of doing it? I have seen in some of the posts it’s mentioned about the web service or REST API. Can anyone point to a documentation or code snippet on how to do it?
This is quite a vast topic, but Sitecore doesn't limit you here. The general note about it is mentioned in paragraph 1.2.7 "Web Services, AJAX, and other Internet Interfaces" of this article.
I would recommend you to explore the standard Sitecore web service (it is present in any Sitecore release). Type http://yourhost/sitecore/shell/webservice/service.asmx to get an idea of what it can offer. It consists of just basic operations, but those are enough for the most of cases.

MS Access and SOAP, XMLRPC etc

I have been searching high and low on Google and finding very little information on using Web services with MS Access 2007. I'm sure this is possible somehow but I can't find any relevant information.
Any ideas?
Have a look a Danny Delasandrini's article on consuming web services from Access. That should get you started, at least, (though it predates A2007 and A2010).
Yeah, what has worked for me in the past is to build a com-callable .NET component, install it on the user's machine, and reference the COM-interface from the access database using VBA.
I was developing and integration between MS Access 2010 and WordPress 4.0 using XMLRPC. I documented the process and some code in 8 articles:
1) Post publish
2) File upload
3) Featured image
4) Custom Type
5) Custom Fields
6) The complete proccess
7) Security
8) Post delete
I hope it will be helpful for somebody. It was very difficult to me to find documentation.
But it works like a charm!

Is there a way to generate confluence wiki pages from javadocs?

I'd like to put documentation on a confluence wiki for a project I'm working on, and I want to automatically generate some of the documentation from javadocs. Is there a plugin for confluence that makes this easy (did not see in preliminary search), alternatively has anyone written scripts to post wiki pages to confluence based on javadocs? An ant task might be cool, then I could have the wiki as a target.
Confluence JavaDocs Macros is a plugin that will generate wiki pages from javadocs. The downside is that a zip archive must be made of the javadocs and placed on the first page of a space, and multiple javadocs cannot co-exist in the same space.
The plugin is also not compatible with every version of Confluence.
And you might want to add javadocs to confluence if you only had a confluence server (or the confluence server is the primary place for documentation) to host your documentation... It has happened before.
Why would you upload javadoc into an editing system? This sounds rater odd. We created a apache server on which the project documentation is uploaded (which is created form Java as javadoc, and from some project documentation (which we also store in the project (inside SCM)).
Next to that we have a Wiki system, in which everyone can write all kind of stuff. It is easy in most wiki to make a external reference (to the Apache web-server, project documentation / javadoc pages).
The good thing about this is, that the project documentation can be re-generated through ant / maven / etc. and automaticly uploaded to some web-server. There is can only be red and not modified. That can only be done through the project sources. Which is good, because otherwise people start to edit the wiki pages, which then get replaced now and then, because a new build / release is created.
You can use the Docs Plugin: https://marketplace.atlassian.com/plugins/net.meixxi.confluence.docs.docs-plugin. This plugin enables you to upload and publish your JavaDocs and other HTML and JavaScript based content in Confluence.
Docs provides also a REST Interface in order to automate the publishing process. So, publishing the JavaDocs can become part of the Continuous Integartion Process. A technical documentation as well as a sample code can you find here: https://ricebean.net/confluence-docs