User Answers

If you used package mapping you may have forgotten to map the global too.  Examine the class definition to find the global name to map.  If you map the class, but not the global you are getting the code of the class, but the storage would be local.  This allows the sharing of definitions across namespaces without sharing the data.  Add the global mapping to share the data too.

Edrian,

You state that Request.JSON is a simple string.  The %ToJSON() method only exists as part of the DynamicObject and DynamicArray classes.  Actually I am surprised that this is not failing completely before you even send the request because of this.  If your variable already has well formed JSON as the value then you can just write that into the EntityBody.

 

BTW, When you deal with JSON in the future you may find an advantage in using the Dynamic object handling for JSON.  For example take the following JSON {"NAME":"RICH","STATE":"MA"}

I find the easiest way is to log into the CSP Gateway for the web server you are using.  If this is a development machine and you are using the stripped down web server internal to Cache you can access this from the management portal.  The path is System Adminstration -> Configuration -> CSP Gateway Management.  If you looking to do this against the traffic on an external web server then you need to the path to the Module.xxx.  On my Windows VM this is http://192.168.x.xxx/csp/bin/Systems/Module.cxw.

You don't indicate which product you are using (IRIS, Cache, Ensemble) which may impact on some details.  However the basic code to load the form data and execute the Post call is going to be  the same.

You need an instance of %Net.HTTPRequest.  If you are in Ensemble then you would work through the adapter.  For Cache or IRIS create an instance of this class and configure it for the server end point.

Add your form data to the request by calling the InsertFormData method.

ex. req.InsertFormData("NameFld", "NameValue")

In order to edit anything in Atelier the  code has to be part of a project. To create an Atelier project right click and choose New->Atelier project.  Then you can right click the class or routine you need to edit and choose "copy to project".

Open the copy associated with the project to editit

Below is a class method that returns details of a Contact.  Note the line that that is highlighted below.  Basically any output written from your REST Classmethod becomes part of the body of the response.  So the WRITE of the output of %ToJSON() puts a JSON object in the response body.

Another method to consider is Delegated Authentication (http://localhost:57775/csp/docbook/DocBook.UI.Page.cls?KEY=GCAS_delegated).  The benefit here is your custom authentication code gets run BEFORE the user is granted any kind of access to the system.  The issue with relying on the routine started as soon as the login is that the user has already "breached the walls" and is in the system (and consuming a license) before you authenticate them.

In Short DeepSee is an analytics tool to incorporate Actionable BI views of your data embedded within your application.  DeepSee sits right on top of your application data store so there is no extract or transformation of data.  This allows the dashboards created to be as up-to-date with transactional events as is appropriate up to near real-time.  Users of these dashboard can then initiate action within the application directly from the Analytical view hence the "Actionable BI" label.