Search

Version: 4.3.0 +

Applicable to: Futurama Editor/Futurama Website

 

Description

The connection between Futurama and Futurama Vision is configured both within Vision and within Futurama. The configuration within Futurama is set in the configuration file of Futurama HTML or in the configuration file of Futurama Editor (developers will use both of these files).

Configuration

Settings

Within the configuration element the next code has to be included:

<configSections>
	<sectionGroup name="futuramaSettings">
		<section name="vision" type="ActuIT.Futurama.Config.VisionSection, ActuIT.Futurama.Engine,Version=1.0.0.0, Culture=neutral, PublicKeyToken=null"/>
	</sectionGroup>
</configSections>

Next to this code, also within the configuration element the next code has to be included:

<futuramaSettings>
	<vision password="testpw" username="testuser" connected="true">
		<endpoint name="HttpBinding_IVision" contract="ActuIT.Futurama.Vision.IVisionService" bindingConfiguration="HttpBinding_IVision" 
		binding="basicHttpBinding" address="http://server/site/Services/VisionService.svc">
			<basicHttpBinding name="HttpBinding_IVision" maxReceivedMessagesize="1048576000"/>
		</endpoint>
	</vision>
</futuramaSettings>

The futuramaSettings element is the general part for more configuration settings. Within this element the vision element is set.

Explanation

Within the vision element some attributes can be set. Below the possible values of these attributes.

connected

To configure a connection with Vision, the value of this attribute must set to 'true'. The endpoint address 'http://server/site/Services/VisionService.svc' is the address to the VisionService.svc-file. Replace the 'server/site' part of the default url to the location of your VisionService. See 'Installation Futurama Vision Management Site' for the installation of the Management Site and the configuring of the url.

username/password (Futurama 19.02 +)

From Futurama 19.02 it is possible to secure the Vision Webservices (see this page). Securing is possible by using Forms Authentication or by using Windows Authentication. In the situation of Forms Authentication you need to supply the password when requesting a Vision Reference. The recommended way to do that is by using Windows authentication. If you request a Vision instance on a remote server you can also use a username and password. This will be passed to the Vision webservice as an attribute. Only use the username and password when using an HTTPS connection.

Configuring Futurama Vision with wsHttp binding

Introduction

You can apply a wsHttp binding to the connection from Futurama HTML to Futurama Vision. To do that you must apply the following sample settings to both sides of the connection. The server side is the Futurama Vision Management Site that is used. And the client side is the Futurama HTML or Futurama Editor that connects to Futurama Vision.

Sample config for Vision Management Site

<!-- in <system.serviceModel><services>-->
<service name="ActuIT.Futurama.Vision.WCF.VisionService">
    <endpoint contract="ActuIT.Futurama.Vision.WCF.IVisionService" bindingConfiguration="Binding_IVisionService" binding="wsHttpBinding" address="">
        <identity>
            <userPrincipalName value="username"/>
        </identity>
    </endpoint>      
</service>
<!-- in <system.serviceModel><services><bindings>-->
<wsHttpBinding>
	<binding name="Binding_IVisionService" maxReceivedMessagesize="1048756" receiveTimeout="00:01:00">
		<reliableSession enabled="false" ordered="false" inactivityTimeout="00:10:00"/>
		<security mode="Message">
			<message establishSecurityContext="false"/>
		</security>
	</binding>
</wsHttpBinding>

Sample config for Futurama HTML or Futurama Editor

Note: in the following sample you need to replace address by the address of the Vision Management installation.

<!-- in <futuramaSettings> -->
<vision connected="true">
	<endpoint name="HttpBinding_IVision" contract="ActuIT.Futurama.Vision.IVisionService" bindingConfiguration="HttpBinding_IVision" binding="wsHttpBinding" address="http://address/Services/VisionService.svc">
		<identity>
			<userPrincipalName value="username"/>
		</identity>
	</endpoint>
	<wsHttpBinding name="HttpBinding_IVision" maxReceivedMessageSize="1048576000" receiveTimeout="00:01:00">
		<reliableSession enabled="false" ordered="false" inactivityTimeout="00:10:00"/>
		<security mode="Message">
			<message establishSecurityContext="false"/>
		</security>
	</wsHttpBinding>
	<behavior name="myBehavior">
	</behavior>
</vision>

Testing

The configuration of the connection with Vision can be tested. See below how to test. If you encounter problems, check the chapter 'Troubleshooting'.

Test the webservice

To test whether the connection with Vision is working check whether you can navigate in your browser to the endpoint address URL (see chapter 'Configuration', paragraph 'Settings' for the endpoint address). You should now see a screen stating that you have succesfully created a webservice.

Troubleshooting

If you encounter problems with the configuration check the sections below.

HTTP Error 404.3-Not found

The errormessage shows 'HTTP Error 404.3 - Not Found'. The page you are requesting cannot be served because of the extension configuration. If the page is a script, add a handler. If the file should be downloaded, add a MIME map.

The solution depends on the version of IIS that is running on your system. Check the version before continuing.

IIS 7.5

It is possible to install all missing MIME-types with a single command. To do this take the following steps:

  1. Open a Command Prompt
  2. Go to the directory C:\Windows\Microsoft.NET\Framework\v3.0\Windows Communication Foundation
  3. Execute the following command: ServiceModelReg.exe -i

After execution the missing MIME-type has been added and the webservice will work once more. If a Handler is missing see the next troubleshoot.

IIS 8.0

The problem can be resolved by adjusting the installation of certain Windows-parts. When doing a clean install these will not be set properly automatically.

  1. Go to Control Panel/Programs and Features/Turn Windows features on or off
  2. Select all the checkboxes at WCF Services

If you applied the solution for IIS 7.5 while your system has IIS 8.0 instead, the solution for IIS 8.0 will not work any more. First you have to undo the command belonging to IIS 7.5. This can be done with the uninstall-command: ServiceModelReg.exe -u.

Missing HandlerMappings

When requesting a webservice the error appears that type System.ServiceModel.Activation.HttpModule could not be loaded from assembly System.ServiceModel, Version=3.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089. This is because in IIS at the HandlerMappings not all .svc HandlerMappings exist. The ASP.NET 4.0 HandlerMappings have to be added.

The solution depends on the version of IIS that is running on your system. Check the version before continuing.

IIS 7.5

It is possible to install the missing HandlerMappings with a single command. To do this take the following steps:

  1. Open a Command Prompt
  2. 2.Go to the directory C:\Windows\Microsoft.NET\Framework\v4.0.30319
  3. 3.Execute the following command: aspnet_regiis -ir

By doing this IIS is again registered without altering the existing webapplications. In IIS at HandlerMappings a number of .svc HandlerMappings have been added.

Feedback

If you have any questions about this subject or if you want to provide us feedback please send us an e-mail.

Updated: 2018-11-06