Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 
Not applicable

Mashup not working on the web server

Hi,

I created a mash up using workbench sample. The Mashup does not work on the web server. I checked the host and port both are working fine.

The app gets timed out. Here is the error Screen Shot 2015-03-19 at 3.23.31 PM.png

1 Solution

Accepted Solutions
Not applicable
Author

Anuj,

Thank you for the information.  If the mashup web page is hosted by the IIS server then you are likely not authorizing to Qlik and consequently not able to get a web socket handshake.

The simple thing to do at this point to validate the mashup works is to have the Sense server host it.  To do this, zip up the html file and the test.js file and then go to the QMC and import as an extension.  From there you will be able to load it in a web browser once you auth to Qlik (default is windows auth).

For deploying to the Repository via QMC here is a link: http://help.qlik.com/sense/en-us/developer/#../Subsystems/Workbench/Content/BuildingWebsites/HowTos/...

Deploying your mashup to something like IIS is doable, but there are some additional steps you are going to want to investigate including but not limited to:

1.     Web ticketing authorization from IIS

2.     Proper referencing of your mashup (you are basically there, but do change isSecure property to true if you haven't done that yet in your js file.

3.     Make sure that your host points to the hostname of the sense server that matches the certificate for the server.

Here is a drop box link with some additional assets that may useful to you.  https://www.dropbox.com/sh/wl2tds8v503nhon/AABRNu_Lanz5M8VyHRZbdaO5a?dl=0

The materials in here are my own and are not supported by Qlik. 

That being said, please review the document (it's a draft) for steps to get the mashup working if you need to make it work in IIS.  This document is a draft.

View solution in original post

11 Replies
Not applicable
Author

Anuj,

Can you give me a little more information how you are trying to make the mashup work?  Is this mashup something you created in Qlik Sense desktop and have migrated to the Qlik Sense Server?  Or is this a solution where you have created a mashup either with Qlik Sense desktop or Qlik Sense server and you are attempting to host the mashup code on another server like an IIS or Apache web server?

Once you provide answers to these questions, I can help you with identifying a proper solution to your challenge.

Cheers,

Jeff G

Not applicable
Author

Hi Jeff,

Thanks for getting back to me.

My mashup is just created on the server using workbench mashup template.

I have copied that mashup and put it on a web server.

I feel the mashup and engine is not getting connected. I have used the correct port and host for Qlik engine.

Thanks,

Anuj

Sent from my iPhone

Not applicable
Author

Can you zip up your code and post it here for me to review?

jg

Not applicable
Author

Hi Jeff,

I have uploaded it on the google drive.

Here is the link

Anuj.zip - Google Drive

Not applicable
Author

Anuj,

To clarify, the server you have these files on is the same server as the Qlik Sense Server.  Is this correct?

In any case, you do not need to supply qlik.js because require is going to load qlik.js when you launch this page.

The main issue I see is that you are using port 4747 to communicate with the sense server.  In this configuration you will want to communicate using port 443.  What is being requested here is not a connection to the engine itself, but to the proxy which then talks to the engine.  To talk to the proxy, your page communicates on port 443.

I'd comment out the line in the html referring to qlik.js.  Then change the port from 4747 to 443 in the test.js file.

Last question, what directory are you placing this index.html web page?  Is it being served by the Qlik Sense proxy or by some other web server like IIS?

jg

Alexander_Thor
Employee
Employee

As Jeff pointed out most likely your Qlik Sense server is not configured to use port 4747 as that is the default port for Desktop. Instead the previous error message in the console indicated that you are serving up your Qlik Sense server over https that has a default port of 443.

Also in the config object I would set the isSecure property to true.
Also the reload url seems to indicate that your mashup is hosted on http://test.resourceintelligence.com/

Then you would also have to resourceintelligence.com to the websocket whitelist for the proxy in QMC to allow communication over websockets from your server.

Not applicable
Author

Screen Shot 2015-03-24 at 11.27.54 AM.png

Hi Jeff,

I have the Mashup on the same physical server. We have installed parallel Plesk,  which uses IIS for web server.

The Path for the html web page is this:

C:\Inetpub\vhosts\resourceintelligence.com\test.resourceintelligence.com\index.html

This is what I tried:

1) Changed the port for 443. It gives same issue Websocket handshake - error connection_reset

2) I commented the qlik.js file, still no luck.

Thanks,

Anuj

Not applicable
Author

Hi Alexander,

Thanks for the reply.

I tried above steps provided by Jeff, I still get error.

I have added resourceintelligence.com to the web-socket whitelist.

Anuj

Not applicable
Author

Anuj,

Thank you for the information.  If the mashup web page is hosted by the IIS server then you are likely not authorizing to Qlik and consequently not able to get a web socket handshake.

The simple thing to do at this point to validate the mashup works is to have the Sense server host it.  To do this, zip up the html file and the test.js file and then go to the QMC and import as an extension.  From there you will be able to load it in a web browser once you auth to Qlik (default is windows auth).

For deploying to the Repository via QMC here is a link: http://help.qlik.com/sense/en-us/developer/#../Subsystems/Workbench/Content/BuildingWebsites/HowTos/...

Deploying your mashup to something like IIS is doable, but there are some additional steps you are going to want to investigate including but not limited to:

1.     Web ticketing authorization from IIS

2.     Proper referencing of your mashup (you are basically there, but do change isSecure property to true if you haven't done that yet in your js file.

3.     Make sure that your host points to the hostname of the sense server that matches the certificate for the server.

Here is a drop box link with some additional assets that may useful to you.  https://www.dropbox.com/sh/wl2tds8v503nhon/AABRNu_Lanz5M8VyHRZbdaO5a?dl=0

The materials in here are my own and are not supported by Qlik. 

That being said, please review the document (it's a draft) for steps to get the mashup working if you need to make it work in IIS.  This document is a draft.