This project has moved. For the latest updates, please go here.

Remote access to openPDCManager

Apr 21, 2011 at 7:09 PM

Is the web version of openPDCManager intended to be accessible from a remote system? That is, if I install it on system A, should I be able to use a web browser on system B to run it? I can't find any explicit mention of that. The configuration setup in the documentation doesn't seem to support that, as far as I can tell from reading and testing an install.

 

P.S. I was going to ask about SSL / https, but if it's local only then there's not much point in SSL.

Developer
Apr 21, 2011 at 8:24 PM

Yes it does support that setup.

The only change you would need is in the base service url, replace localhost with the name or IP of the host machine. If you have SSL certificate installed on host machine/server then use https in base service url. Dynamic binding will take care of SSL by setting transport layer security in the binding. If for any reason you experience communication issue between silverlight client and WCF service on server, I would recommend using Fiddler tool.

Thank you,
Mehul Thakkar

Apr 21, 2011 at 10:50 PM
Edited Apr 21, 2011 at 11:18 PM

Yes, I had already tried that, I just wanted to know if that was supported. I did not have a problem getting it to work with just HTTP.

I have tried setting it up for SSL but not had much success. I enable SSL support in IIS and verified I could get to the server via HTTPS. 

If I change the base service URL to "http://192.168.1.125/openPDCManagerServices" I get this error

If I change the base service URL to "https://192.168.1.125/openPDCManagerServices" I get this error

Have you seen either of these?

Developer
Apr 22, 2011 at 1:25 PM

First error is message is related to HTTP schema as it expects HTTPS.

Second error could be anything. Few things you can try here.

1. Add a "/" at the end of your base service URL. So it should read https://192.168.1.125/openPDCManagerServices/
2. Make sure you can access this url from the client machine: https://192.168.1.125/openPDCManagerServices/Service/PhasorDataService.svc and https://192.168.1.125/openPDCManagerServices/DuplexService/PhasorDataDuplexService.svc. You should see a screen saying service created successfully in your browser. Otherwise try step 3 below.
3. Please verify these settings.
****************************************************

The openPDCManager doesn't appear to be connecting to my database.

You need to modify the "web.config" file in the openPDCManagerServices (note this is not the same file as the "web.config" file in the openPDCManager). The process is described on the openPDCManager configuration page.

Additionally, if you are using IIS 7, you may need to register the MIME type for .svc files. Open the command prompt and type "%windir%\Microsoft.NET\Framework\v3.0\Windows Communication Foundation\ServiceModelReg.exe" -r -y

Why am I receiving a CrossDomainError?

It's possible that you will need to move the "clientaccesspolicy.xml" file up one level in the directory structure. The file should be located in the installation directory for openPDCManagerServices ("C:\Inetpub\wwwroot\openPDCManagerServices" by default).
****************************************************

If none of the above helps, then install fiddler on client machine and see if you find any more detail there. Thank you,

Mehul Thakkar

Apr 27, 2011 at 5:07 AM

1) Did that. No effect.

2) Yes, I can access both urls.

3) Connection to the database is fine. If I use just HTTP then everything works. It is only when changing to HTTPS that I have a problem.

I will look in to fiddler. I am not sure when I will be able to get to that. But the root problem seems to be exceptions inside OpenPDCManager. Has anyone verified that HTTPS can be made to work?

Also, semi-related, why doesn't the web version of OpenPDCManager require me to log in?

Developer
Apr 27, 2011 at 2:19 PM

One more thing I would suggest is to change bindings configuration in web.config file of the openPDCManagerServices install directory.

Change the following section to reflect httpsTransport instead of httpTransport.

<bindings>
	<customBinding>
		<binding name="customBinaryBinding" closeTimeout="00:20:00" openTimeout="00:20:00" receiveTimeout="00:20:00" sendTimeout="00:20:00">
			<binaryMessageEncoding/>
			<httpsTransport maxReceivedMessageSize="3276800"/>          
		</binding>
	</customBinding>
</bindings>

See if this helps. HTTPS has been verified before but with a different corporate setup where SSL was not installed directly on the webserver. It was on the proxy server so web server in the end received http request even though client was using https. In that case httpTransport worked fine.

Development on Silverlight based web version of openPDC Manager is running quite behind compared to WPF based windows version. So role baed security has not been enabled yet. But we will get there soon.

Thank you,
Mehul Thakkar

Apr 28, 2011 at 3:40 PM

I tried that. I don't get the error popups. Instead the "Loading Data" popup comes up and never goes away (I left it overnight).

At this point I will just close this out and wait for a future release, as this functionality is not critical for me. Thanks for the help.