Web Development

Syndicate content 21 

In my country we speak in spanish. My developing machine uses windows 8.1

I made a nice looking html mock-up using angular material (in Atom, writing in UTF-8). I just moved that mock-up to the CSP folder inside Ensemble and it shows the typical weird characters of character encoding problems.

Have you had an issue like this before?

My temporal solution for the html files: I just configured Atom to read the files in Windows 1252 encoding.


However I still see weird characters on a query to the DB (I made a rest service that returns a json than in turn I use to fill a select input in the html)

 

 

Last answer 22 February 2017 Last comment 24 February 2017
0 0
424

views

0

rating

Hi everyone, I have and Zen Mojo application, it's all working but I have some doubts about what is recommended to use: There is some reports of employees, for example, and actually I'm using some plugins : "Excelent export" to generate Excel reports and "jspdf" to generate PDF reports in client side.

I have an REST service, that receives the request, process and returns JSON, after client side receive the response it's processed.

- This can be slow/bad in applications with large data?

- It's better/recommended to use ZenReports even with ZenMojo applications?

- Or Zen Mojo, like any other applications based on HTML, JS and PHP can support this with any problem?

- The preparation of the JSON is very fast because the use of %DynamicObject and %DynamicArray; ZenReport can be slower than it?

 

Thanks,

Andrei L. Nenevê

Last answer 24 February 2017
0 0
0

comments

188

views

+ 1

rating

I have a web application with html, css, js files (no ZEN/CSP).

Problem: after I update them on a server, Caché still servers old and cached version (browser Cache is disabled).

There is a manual cache purge in Gateway Settings, of course, but is there an automatic solution?

I'll be okay with disabling cache server-wide, but an application-wide solution would be better.

I don't want to host web app on a separate web server.

Here's my web app config:

Last answer 10 February 2017 Last comment 10 February 2017
0 0
632

views

0

rating

So I installed Atelier, created my project, imported and compiled all my classes but now I need to import all my CSP files too but I can't find any instructions on how to do so. Just copying the files into [project]\CSp\csp is not working as they don't show up in the project tree.

Last answer 3 February 2017 Last comment 3 February 2017
0 1
228

views

0

rating

Hello guys,

I've got this piece of code which runs the method "WebMethod", that belongs to %SOAP.WebBase.cls.

It grabs the outcome from an internal webservice we have and after that, it writes into a file.

The thing is, when I browse the file contents, I realize that in the place where a special character should be, I see a question mark.

By querying the same webservice from a special soap tool called "SoapSonar" (I've been using this for years), the outcome shows up this special character (shows it properly).

So I wonder... is there kind of encoding parameter I could use within the "WebMethod", so it'd return the correct output?

--

Last answer 31 January 2017 Last comment 2 February 2017
0 2
1979

views

+ 1

rating

I want do to a "simple thing". Show a dynamic log of actions in the browser as we can see on Terminal. For that, I guess to make a simple CSP Page that show a new line every WRITE command is the thing I need.  

But how I refresh after each WRITE?

How I can refresh the content automatically?

I made a simple CSP Page and in method OnPage I do this test:

    write "Start..",!
    for i=1:1:10{
        hang 1
        write "Doing "_i,!
    }

 

Don't work... because the browser show me only after the process finish.

I guess I should use another way... any help?

 

Last answer 16 January 2017 Last comment 16 January 2017
0 1
184

views

0

rating

I have a server with public web application with Unauthenticated access and there seems to  be a problem that CSP session ends, but associated license persists for some time (hours). If several users log in, we can hit license limit and all the other users get 503 Service unavailable error.

We are currently debugging it and moving to authenticated web applications,  but is there a way to free these licenses quickly?

Here's how it looks like in SMP:

 

 

Last answer 14 December 2016
0 1
0

comments

313

views

0

rating

Suppose you have developed your own web app with InterSystems technologies stack and now want to perform a captcha validation on the client side in order to determine whether or not the user is human and make it safer. There are some modern frameworks to address the captcha issue, however most part of them needs internet access to generate codes and sometimes are complex to implement. Take this as basic example considering that image recognition has gotten too good. That's why you nowadays you tend to see more pattern recognition captchas than mere reading ones. (I.e. click all the images with a store front in it). If you need something more complex go ahead, develop, improve this code and share it. Read on to find out how to use this basic example:

  

Demo.Captcha class

Last comment 13 December 2016
0 2
573

views

+ 6

rating

As web application gets more complex, more technologies are involved into the application development. Once it gets deployed in large scale the configuration gets more complex too. For sure one of the most difficult part of the story is the security. In a complex solution when independent servers are feeding single web pages with contents, it is indeed challenging to keep the integrity of such system. HTML5 introduced a (weak) security constraint, the Cross Origin Resource Sharing (CORS). This article tells how to enable CORS for CSP/ ZEN applications.

Last comment 7 December 2016
0 4
522

views

+ 2

rating

I am pleased to announce the immediate availability of Atelier 1.0

This is the debut release of our new Eclipse based plugin for developing code on Cache and Ensemble.

Highlights include

  •     Integrated Source Management
  •     Debugging
  •     Context based documentation
  •     Server Side browsing of multiple systems
  •     Compilation and Testing facilities

Atelier will be released independently of various server releases. The first versions of Cache and Ensemble that fully support Atelier are 2016.2 and higher. Facilities within Atelier itself will manage updating as we make newer versions available. You can download the Atelier client for the OS of your choice here:

https://download.intersystems.com/download/atelier.csp

The release notes for the 1.0 release can be found here

Last comment 2 December 2016
0 1
919

views

+ 17

rating

Caché Localization Manager

CLM  is a tool for localization/internationalization/adding multi-language support to a project based on InterSystems Caché.

Imagine that you have a ready project where all the content is in Russian, and you need to add an English localization to it. You wrap all your strings into resources, translate them into English and call the necessary resource for Russian or English when necessary. Nothing tricky, if you think about it. But what if there are lots of strings and there are mistakes in Russian (or English)? What if you need to localize in more than one language – say, ten? This is exactly the kind of project where you should use CLM. It will help you localize the entire content of your project into the necessary language and retain the possibility to correct entries.

Last comment 22 November 2016
0 5
433

views

+ 5

rating

If you spend a lot of time working with javascript, json and html and you are new to Eclipse / Atelier you may like this tip. 

 Instead of the default Atelier HTML you can install a JS plugin for eclipse which works quite good handling javascript files, allowing you to see functions, color syntax, etc... The one I used is the JSDT. The JavaScript Development Tools (JSDT) provide plug-ins that implement an IDE supporting the development of JavaScript applications and JavaScript within web applications. It adds a JavaScript project type and perspective to the Eclipse Workbench as well as a number of views, editors, wizards, and builders

0 2
0

comments

286

views

+ 2

rating

I need to catch the user using a bookmark to get into the application in the 'middle'; i.e. the user is getting into the application not  at the home page.  I've tried OnPreHTTP to redirect, but I can't catch the new session, and it doesn't redirect.

How can you redirect to the home page upon login?

Thanks,

Laura

Last answer 9 November 2016 Last comment 9 November 2016
0 2
163

views

0

rating

I am happy to share the news that Zen Mojo 1.1.2 has been released. This release includes a critical fix for Firefox that we had to get out as fast as possible. No other changes are included to allow easy upgrades. We recommend upgrading to this release if you are running on Zen Mojo 1.1.1.

All upcoming Caché and Ensemble releases will ship with Zen Mojo 1.1.2.

You can download Zen Mojo kits from the WRC distribution page: https://wrc.intersystems.com/wrc/Distribution.csp

Any fix or enhancement that was previously planned for Zen Mojo 1.1.2 will be included in the next upcoming release 1.1.3.

0 2
0

comments

201

views

+ 2

rating

Now, let’s say you can’t access the terminal or simply you just rather execute it from a web interface. In this article, I will show you how to execute terminal commands from a simple web page.

For example, in the image below you see how we execute $zv on a webpage:

This is mostly possible due to the XECUTE command in Caché ObjectSCript. This command takes a string as a parameter and tries to execute it. This is the command used from the webpage, to execute what is being passed from the left navigation menu.

This article contains three snippets of code. Each of which corresponds with a separate file. In total, there are three files:

1. Index.csp  (A sample page with two frames)

Last comment 13 October 2016
0 0
4927

views

+ 2

rating

How to parse a URL in Caché:

Let's pretend you are working on a project where you may be retrieving a URL for some purpose and you have the need to be easily able to parse apart that URL to get the various components that make up the URL.

Here's how to do that:

Note:  This example assumes you have a variable named sURL that contains some url (i.e. http://www.intersys.com/main.csp?QUERY=abc#anchor) and you will be creating an array of the URL component pieces, where the array will be named aComponents.

In your class/routine, add the following code:

Do ##class(%Net.URLParser).Parse(sURL,.aComponents)

This will parse apart the specified URL (see example url above) and will create the specified return array, which will contain the following nodes

Last comment 7 October 2016
0 5
758

views

+ 2

rating

I'm following the tutorial here.  When I try to call the default Test() method I get the following error:

An error occurred with the CSP application and has been logged to system error log (^ERRORS)

I found this document which says I need to make the "Web Application" accessible by running a couple commands.  I'm not even sure I created a Web Application.  Regardless, I tried a few variants but still get the same error.

Here is the URL for the Service Catalog: /csp/healthshare/mhclib/Custom.MHC.Scott.ServiceTest.cls

I tried different things including these two

Last answer 29 September 2016 Last comment 22 June 2016
0 2
1160

views

0

rating

Click here to view our OAuth 2.0 Overview

InterSystems created this video as a high-level overview of OAuth 2.0 technology, geared toward developers looking to learn the basics of OAuth 2.0.  It will teach you how OAuth 2.0 works, what roles are involved, what benefits it can provide, and how InterSystems Caché can be used with this technology.

Last comment 28 September 2016
0 3
321

views

+ 6

rating

If a user simply closes a tab (running a web application), is there any good way to ensure that the license is released AND the login cookie is destroyed?  

 

I found that if the tab is simply closed without first logging out of the application, then 1) the license hangs around forever, and 2) if the user then opens a tab, he is already logged in.

 

For #2, I understand that there might be some grace period to allow the user to log in automatically again using the same session Id (where is that documentation again?) but what about destroying the license?  Who/what is supposed to clean that up?

Thanks,

Laura

Last answer 6 September 2016 Last comment 7 September 2016
0 1
617

views

+ 1

rating

I've noticed that Management portal somehow manages to allow a single user to be in different namespaces in different tabs in the same application (i.e. Management Portal).  I've looked at my Processes, however, and see that all of my processes using MgmtPortal think I'm in %SYS, even though 2 of them are looking at globals in two different namespaces; NamespaceA and NamespaceB.  

 

I can even fool MgmtPortal because the first time I try to look at a global in NamespaceA it thinks I'm in %SYS!  After a refresh, however, I can see the global in NamespaceA.  

 

How does MgmtPortal do this?  This is what I'm trying to achieve with my own web application (hopefully minus the fooling).  GroupById doesn't seem to work (I have a separate web application for each namespace, and a different GroupById for each web application -- didn't seem to allow more than one namespace for one user).

Last answer 1 September 2016 Last comment 1 September 2016
0 1
352

views

0

rating

Hi, I have a question about web applications.

First, I know that my ZEN application is using a web application called /OurAppName, but I honestly don't know why it's choosing that web application over the default of /csp/default-namespace, so if you can give me a hint as to how else the web application is set, please do let me know.  I'd also love to see the web application's properties programmatically, if possible (such as the physical files path).

 

Our other web applications are called /OurAppName/NAMESPACE rather than /csp/namespace.

Yes, we have a standardPage that has an Application parameter, which is an Application class name, but this is different than the web application from Mgmt portal. Yes, I read the documentation on how the web application is discovered.

Last answer 31 August 2016 Last comment 31 August 2016
0 1
166

views

0

rating