...
Icon(s) | File | Extension | Note |
---|
| | *.html, *.htm, *.xhtml | - Supports HTML/XHTML versions 1 - 5.
- creates one "HTML5 Source Code" object that is the caller of html to js links and a transaction entry point
- broadcasts tags and attributes/values to other CAST extensions such as AngularJS. Other extensions will not need to analyze the files themselves.
|
 | Javascript | *.js, *.jsx, *.mjs | Supports: - JavaScript 1 to 1.8.1.
- JavaScript ECMA 6
See also JavaScript below for more information. |
| Cascading Style Sheet | *.css and *.scss (*.scss is supported from 2.0.17-funcrel) | Supports CSS 1 - 3. |
| Java Server Page | *.jsp, *.jspx, *.jsf, *.jsff | Supports JSP 1.1 - 2.3. See JSP below for more information. Info |
---|
Note that: - from release 2.0.2 of the extension, *.jsf and *.jsff will automatically be taken into account during the analysis.
- from release 2.0.3 of the extension, *.jspx will automatically be taken into account during the analysis.
They will be analyzed as .jsp files. |
|
| Active Server Page | *.asp, *.aspx | See (Classic) ASP below for more information. |
| HTML Components | *.htc | HTC files contain html, javascript fragments that will be parsed. Created objects will be linked to the HTC file. |
| ASP.NET MVC Razor | *.cshtml | See ASP.NET MVC Razor below for more information. |
| IBM EAD4J Jade | *.jade | Files related to the IBM EAD4J Jade framework. |
| Pug | *.pug | Pug files. |
- | YAML (YAML Ain't Markup Language) | *.yml, *.yaml, | Files related to the YAML language, handled by the Node.js extension. |
- | Vue.JS | *.vue | Files related to the Vue.js JavaScript language, handled by the Node.js and Vue.js extensions. |
- | Properties | *.properties | -- |
- | Template | *.template | Files related to serverless.template, handled by the Node.js extension. |
Info |
---|
Expand |
---|
Note that you may find that the number of files delivered is more than then number of files reported after analysis. This is due to the following: - by default some files are automatically excluded from the analysis, typically third-party frameworks which are not required. Please see the filters.json file located at the root of the extension folder for a complete list of default exclusions.
- some bundled javascript files are automatically excluded from the analysis, typically minified files (extension.min.js) or disguised minified files (extension.js), but for files containing one or a few very long lines, a specific calculation is actioned by the analyzer).
- some files that have been included in the analysis may not be saved in the CAST Analysis Service schema because they do not contain any useful information, i.e. they do not contain any technical sections such as functions which would lead to the creation of a specific object.
|
Technology support notes
...
Excerpt Include | ASP - Since version 2.1.14-funcrel, files which are excluded from analysis are considered as external libraries when they are included by analyzed code. For each file, a "HTML5 JavaScript Source Code" is created with the external property set to "True". This means that these files are not included in rule checks or other computations.
|
Technology support notes
(Classic) ASP Expand |
---|
Excerpt Include |
---|
| ASP - Technical notes and limitations |
---|
| ASP - Technical notes and limitations |
---|
nopanel | true |
---|
|
|
...
The extension will be automatically downloaded and installed in AIP Console (it is a "shipped" extension which means it is delivered with AIP Core). You can also manually install the extension CAST Console. You can manage the extension using the Application - Extensions interface. When installed, follow the instructions below to run a new analysis/snapshot to generate new results:
:
Image Added
Packaging, delivering and analyzing your source code
...
The following libraries are supported for Web Service HTTP calls:
- XMLHttpRequest
- window.open
- document.submit
- location.href
- Ext.Updater (Sencha)
- EventSource
- fetch
- axios
- superagent
- aws-amplify
- falcor
- WLResourceRequest
- WebSocket
Once the HTML5 extension analysis is finished, the analyzer will output the final number of web service calls created.
XMLHttpRequest
...
When urls could not be correctly evaluated, a HTTP call named "{}" will be created, except for:
- window.open
- window.location.href,
- document.location.href
These exceptions are due to very large number of statements, and they are not explicit calls as "ajax", "get", "post", "delete"... functions.
XMLHttpRequest
Code Block |
---|
|
var xhttp = new XMLHttpRequest();
xhttp.open("GET", "ajax_info.txt", false);
xhttp.send(); |
window.open
Code Block |
---|
|
url = "EditStandaloneWeb.do?url_name_id="+urlNameId;
popUpWindow = window.open(url,'popUpWindow','height=900,width=900,left=300,top=50,resizable=no,directories=no,status=no'); |
document.submit
Code Block |
---|
|
addUpload.document.forms[1].action = "ciedit";
addUpload.document.forms[1].submit(); |
...
Code Block |
---|
|
$form.prop('method', 'post');
$form.prop('action', '<c:out value="/toto" />');
$form.submit(); |
location.href
Code Block |
---|
|
url = "//localization.att.com/loc/controller";
window.location.href = url; |
...
Code Block |
---|
|
url = "//localization.att.com/loc/controller";
document.location.href=url; |
Ext.Updater (Sencha)
Code Block |
---|
|
Ext.get(panelId).getUpdater().update({
url:'actionUrl',
params:params,
method:'POST',
failure: function(inResp) {}
});
|
EventSource
Code Block |
---|
|
const eventsUrl = '/api/dashboard/events?token=' + localStorage.getItem('dashboard_token');
const serverEvents = new EventSource(eventsUrl);
|
fetch
Code Block |
---|
|
fetch('/users', {
method: 'POST',
body: new FormData(form)
});
|
axios
Code Block |
---|
|
axios.get('/user', {
params: {
ID: 12345
}
})
.then(function (response) {
console.log(response);
})
.catch(function (error) {
console.log(error);
});
|
...
Code Block |
---|
|
var instance = axios.create({
baseURL: 'https://api.example.com'
});
instance.get('/longRequest', {
timeout: 5000
});
|
superagent
Code Block |
---|
|
request
.post('/api/pet')
.send({ name: 'Manny', species: 'cat' })
.set('X-API-Key', 'foobar')
.set('Accept', 'application/json')
.end(function(err, res){
// Calling the end function will send the request
});
|
...
Code Block |
---|
|
request('/search', (err, res) => {
});
|
aws-amplify
Code Block |
---|
|
import {API} from 'aws-amplify';
API.get('ReactSample','/items/orders/' + sessionStorage.getItem('latestOrder')).then(response => {});
|
falcor
Code Block |
---|
|
var falcor = require('falcor');
var model = new falcor.Model({source: new falcor.HttpDataSource('/model.json')});
model
.get(["events", "byName", ["Midwest JS"], ['description']])
.then(function(response) {
document.getElementById('event-data').innerHTML = JSON.stringify(response, null, 2);
},
function(err) {
console.log(err);
});
|
WLResourceRequest
Code Block |
---|
|
var request = new WLResourceRequest('/adapters/sampleAdapter/multiplyNumbers', WLResourceRequest.GET);
request.setQueryParameter('params', [5, 6]);
request.send().then(
function(response) {
// success flow, the result can be found in response.responseJSON
},
function(error) {
// failure flow
// the error code and description can be found in error.errorCode and error.errorMsg fields respectively
}
);
|
...
Code Block |
---|
|
var request = new WLResourceRequest(URI("/adapters/sampleAdapter/multiplyNumbers"), WLResourceRequest.GET);
request.setQueryParameter('params', [5, 6]);
request.send().then(function(response) {}, function(error) {});
|
Web Service calls in html/jsp code
The following libraries are supported for Web Service HTTP calls:
- href
- iframe.src
- form.action
- input.formaction
- datamap
- jsp.forward
- jsp.pager
- struts-html
- struts tags-html
- struts-tags
- struts-nested
- struts jqgrid
- euamtags
- spring
Once the HTML5 extension analysis is finished, the analyzer will output the final number of web service calls created.
href
Code Block |
---|
|
<a href="@Url.Action("Edit", "MissionMandatoryDocuments", new
{
type = item.Key,
nodeId = Model.NodeId
})">
</a>
|
iframe.src
Code Block |
---|
|
<iframe src="/greco/ValidationADP.do?hidden=doPerform" height="900" width="1000"></iframe>
|
form.action
Code Block |
---|
|
<form action="@Url.Action("Export", "InterimBillsEvaluation")" method="post">
</form>
|
Code Block |
---|
|
<form action="<c:out value="${epayCustomer.absoluteBaseWithContextPath}"/>/dlife/payBill.perform" method="GET">
</form>
|
input.formaction
Code Block |
---|
|
<input type="submit" value="Save" name="Edit" formaction="@Url.Action("edit")" class="btn btn-default" />
|
datamap
Code Block |
---|
|
<div id="map" data-request-url="@Url.Action("GetStops", "Home")" data-request-url2="@Url.Action("Driving", "Home")">
<script>
function getStops() {
var url = $('#map').data('request-url');
window.open(url)
}
</script>
|
jsp.forward
Code Block |
---|
|
<%@ page language="java" contentType="text/html; charset=ISO-8859-1" pageEncoding="ISO-8859-1"%>
<jsp:forward page="/dispatcher/mainMenu"/>
|
jsp.pager
Code Block |
---|
|
<%@ taglib prefix="pg" uri="http://jsptags.com/tags/navigation/pager"%>
<html>
<pg:pager url="RolePaginationAction.do" items="<%= total_records %>" index="<%= index %>" maxPageItems="<%= maxPageItems %>" maxIndexPages="<%= maxIndexPages %>" isOffset="<%= true %>" export="offset,currentPageNumber=pageNumber" scope="request">
</pg:pager>
</html>
|
struts-html
Code Block |
---|
|
<%@ taglib uri="/WEB-INF/struts-html.tld" prefix="html" %>
<%@ taglib uri="/WEB-INF/struts-bean.tld" prefix="bean" %>
<html:html xhtml="true">
<div align="center">
<html:form action="/submitCustomerForm" method="GET" />
</div>
</html:html>
|
Code Block |
---|
|
<%@ taglib uri="/WEB-INF/struts-html.tld" prefix="html" %>
<%@ taglib uri="/WEB-INF/struts-bean.tld" prefix="bean" %>
<html:html xhtml="true">
<div align="center">
<html:link page="/submitCustomerForm" />
</div>
</html:html>
|
struts tags-html
Code Block |
---|
|
<%@ taglib uri="http://jakarta.apache.org/struts/tags-html" prefix="html"%>
<html:html xhtml="true">
<div align="center">
<html:link action="bookEdit.do?do=borrowBook" paramName="book" paramProperty="id" paramId="id">Borrow book</html:link>
</div>
</html:html>
|
struts-tags
Code Block |
---|
|
<%@taglib prefix="s" uri="/struts-tags"%>
<html>
<s:url action="banque" method="consulter" var="urlAcceuil"/>
<s:a href="%{urlAcceuil}">Retour à l'acceuil</s:a>
</html>
|
Code Block |
---|
|
<%@taglib prefix="s" uri="/struts-tags"%>
<html>
<body>
<s:a action="compte" />
</body>
</html>
|
Code Block |
---|
|
<%@taglib prefix="s" uri="/struts-tags"%>
<html>
<body>
<s:form action="compte">
<s:hidden name="contract_nbr" id="contract_nbr" value="%{mod.contract_nbr}"/>
</s:form>
</body>
</html>
|
struts-nested
Code Block |
---|
|
<%@ taglib uri="/tags/struts-nested" prefix="nested" %>
<html:html xhtml="true">
<div align="center">
<nested:form action="modifyAccount.do" />
</div>
</html:html>
|
struts jqgrid
Code Block |
---|
|
<%@taglib prefix="sjg" uri="/struts-jquery-grid-tags" %>
<html>
<sjg:grid id="sjgrid" dataType="json" href="/url" caption="Grid Model" gridModel="gridModel" pager="true" navigator="true">
</sjg:grid>
</html>
|
Code Block |
---|
|
<%@taglib prefix="sjg" uri="/struts-jquery-grid-tags" %>
<html>
<sjg:grid id="sjgrid" dataType="json" editurl="/url" caption="Grid Model" gridModel="gridModel" pager="true" navigator="true">
</sjg:grid>
</html>
|
Code Block |
---|
|
<%@taglib prefix="sjg" uri="/struts-jquery-grid-tags" %>
<html>
<sjg:grid id="sjgrid" dataType="json" cellurl="/url" caption="Grid Model" gridModel="gridModel" pager="true" navigator="true">
</sjg:grid>
</html>
|
Code Block |
---|
|
<%@taglib prefix="sjg" uri="/struts-jquery-grid-tags" %>
<html>
<sjg:gridColumn id="sjgrid" surl="/url">
</sjg:gridColumn>
</html>
|
Code Block |
---|
|
<%@taglib prefix="sjg" uri="/struts-jquery-grid-tags" %>
<html>
<sjg:gridColumn id="sjgrid" editoptions="{dataUrl: '/url'}">
</sjg:gridColumn>
</html>
|
euamtags
Code Block |
---|
|
<%@ taglib uri="WEB-INF/euamtags.tld" prefix="Euam" %>
<div align="center">
<Euam:form action="/submitCustomerForm" />
</div>
|
spring
Code Block |
---|
|
<%@taglib uri = "http://www.springframework.org/tags/form" prefix = "form"%>
<html>
<div align="center">
<form:form method="POST" action="/HelloWeb/addStudent" />
</div>
</html>
|
Code Block |
---|
|
<%@taglib uri = "http://www.springframework.org/tags/form" prefix = "form"%>
<html>
<div align="center">
<form:form method="POST" commandName="changePassword" action="" />
</div>
</html>
|
Web Service calls in razor code (cshtml)
- Html.BeginForm
- Ajax.BeginForm
- Html.Action
- Html.ActionLinkWithAccess
- Html.ActionLink
- Ajax.ActionLink
- Html.RenderAction
- Url.Action
- Url.RouteUrl
- Kendo
Once the HTML5 extension analysis is finished, the analyzer will output the final number of web service calls created.
Html.BeginForm
Code Block |
---|
|
@using (Html.BeginForm("Setting", "Peopulse", FormMethod.Post, new { autocomplete = "off", id = "form-peopulseFtpSettings", @class = "block" }))
{
<input type="submit" name="Submit" />
}
|
Ajax.BeginForm
Code Block |
---|
|
@using (Ajax.BeginForm("Setting", "Peopulse", new { //routeValues
missionId = Model.Mission.Id,
dayId = Model.MissionDayId,
method="GET"
},
new AjaxOptions { //Ajax setup
UpdateTargetId = "synthesisLinesDiv",
HttpMethod = "GET",
InsertionMode = InsertionMode.Replace,
},
new { //htmlAttributes
Id = "form-selectSynthesis",
//method="get"
}))
{
}
|
Html.Action
Code Block |
---|
|
@Html.Action("Delete", "Ctrl", new { id = item.ID })
|
Html.ActionLinkWithAccess
Code Block |
---|
|
@Html.ActionLinkWithAccess(__("Add frequency interim summary"), "AddFrenquencyInterimSummary", null, new {@class = "btn popupLink"})
|
Html.ActionLink
Code Block |
---|
|
@Html.ActionLink("Save", "SaveAction", "MainController", null, new { @class = "saveButton", onclick = "return false;" })
|
Ajax.ActionLink
Code Block |
---|
|
@Ajax.ActionLink("x", "Delete", "NotificationMessenger", new { notific.Id }, new AjaxOptions() { HttpMethod = "POST", OnComplete = "DismissNotification" }, new { @class = "notification-close" })
|
Html.RenderAction
Code Block |
---|
|
@Html.RenderAction("Delete", "Ctrl", new { id = item.ID })
|
Url.Action
Code Block |
---|
|
@{ Html.RenderPartial("_EmployeesTable", @Url.Action("GetFrenquencyInterimSummary")); }
|
Code Block |
---|
|
@using (Html.BeginForm("edit", "Employee", FormMethod.Post))
{
<div class="form-horizontal">
<div class="form-group">
<div class="col-md-offset-2 col-md-10">
<input type="submit" value="Save" name="Edit" formaction="@Url.Action("edit")" formmethod="post" class="btn btn-default"/>
</div>
</div>
</div>
}
|
Code Block |
---|
|
@Html.PagedListPager(Model, page => Url.Action("Index", new { page, sortOrder = ViewBag.CurrentSort, currentFilter = ViewBag.CurrentFilter}))
|
Url.RouteUrl
Code Block |
---|
|
<a href="@(Url.RouteUrl(new{ action="DownloadFile", controller="DPScoreResults", id=Model.QuoteId, scoreRunId=Model.ScoreRunId}))" class="popupLink ico">
|
Kendo
Code Block |
---|
|
<div>
@(Html.Kendo().Grid<ElementControle>()
.Name("gridElementsControle")
.DataSource(datasource =>
datasource.Ajax()
.Read(r => r.Action("GetElementsControle", "GestionUnitesTraitement"))
)
)
</div>
|
...
The following objects are displayed in CAST Enlighten:
...
Image Removed
...
Image Removed
...
Image Removed
...
Image Removed
...
Image Removed
...
Image Removed
...
Image Removed
...
...
Image Removed...
Image Removed
...
Image Removed
...
Image Removed
...
Image Removed
...
Image Removed
...
Image Removed...
Image Removed
...
Image Removed
...
Image Removed
...
Image Removed
...
Image Removed...
HTML5 Web Socket Service
...
Image Removed
...
HTML5 Get XMLHttpRequest Service
HTML5 Get HttpRequest Service
HTML5 Razor Get service
...
Image Removed...
HTML5 Update XMLHttpRequest Service
HTML5 Update HttpRequest Service
...
Image Removed
...
HTML5 Post XMLHttpRequest Service
HTML5 Post HttpRequest Service
HTML5 Razor method call
...
Image Removed
...
HTML5 Delete XMLHttpRequest Service
HTML5 Delete HttpRequest Service
...
Image Removed
...
HTML5 Applet class reference
...
Image Removed
...
dojo
Code Block |
---|
|
var xhrArgs = {
url: "dojo/LICENSE_NOT_THERE",
handleAs: "text",
preventCache: true,
handle: function(error, ioargs){
}
}
var deferred = dojo.xhr("POST", xhrArgs);
|
Code Block |
---|
|
var xhrArgs = {
url: "dojo/LICENSE_NOT_THERE",
handleAs: "text",
preventCache: true,
handle: function(error, ioargs){
}
}
var deferred = dojo.xhrGet(xhrArgs); // or dojo.xhrPost, dojo.xhrPut, dojo.xhrDelete |
Code Block |
---|
|
require(["dojo/request"], function(request){
request("my_url").then(
function(text){
},
function(error){
}
);
}); |
Code Block |
---|
|
require(["dojo/request/node"], function(nodeRequest){
nodeRequest("my_url").then(
function(text){
console.log("The file's content is: " + text);
},
function(error){
console.log("An error occurred: " + error);
}
);
}); |
Code Block |
---|
|
require(["dojo/request"], function(request){
request.get("my_url").then(
function(text){
console.log("The file's content is: " + text);
},
function(error){
console.log("An error occurred: " + error);
}
);
}); // or request.post, request.put, request.del |
WebSocket
Code Block |
---|
|
var socket = new WebSocket('ws://game.example.com:12010/updates2');
|
Web Service calls in html/jsp code
The following libraries are supported for Web Service HTTP calls:
- href
- iframe.src
- form.action
- input.formaction
- datamap
- jsp.forward
- jsp.pager
- struts-html
- struts tags-html
- struts-tags
- struts-nested
- struts jqgrid
- euamtags
- spring
Once the HTML5 extension analysis is finished, the analyzer will output the final number of web service calls created.
href
Code Block |
---|
|
<a href="@Url.Action("Edit", "MissionMandatoryDocuments", new
{
type = item.Key,
nodeId = Model.NodeId
})">
</a>
|
iframe.src
Code Block |
---|
|
<iframe src="/greco/ValidationADP.do?hidden=doPerform" height="900" width="1000"></iframe>
|
form.action
Code Block |
---|
|
<form action="@Url.Action("Export", "InterimBillsEvaluation")" method="post">
</form>
|
Code Block |
---|
|
<form action="<c:out value="${epayCustomer.absoluteBaseWithContextPath}"/>/dlife/payBill.perform" method="GET">
</form>
|
input.formaction
Code Block |
---|
|
<input type="submit" value="Save" name="Edit" formaction="@Url.Action("edit")" class="btn btn-default" />
|
datamap
Code Block |
---|
|
<div id="map" data-request-url="@Url.Action("GetStops", "Home")" data-request-url2="@Url.Action("Driving", "Home")">
<script>
function getStops() {
var url = $('#map').data('request-url');
window.open(url)
}
</script>
|
jsp.forward
Code Block |
---|
|
<%@ page language="java" contentType="text/html; charset=ISO-8859-1" pageEncoding="ISO-8859-1"%>
<jsp:forward page="/dispatcher/mainMenu"/>
|
jsp.pager
Code Block |
---|
|
<%@ taglib prefix="pg" uri="http://jsptags.com/tags/navigation/pager"%>
<html>
<pg:pager url="RolePaginationAction.do" items="<%= total_records %>" index="<%= index %>" maxPageItems="<%= maxPageItems %>" maxIndexPages="<%= maxIndexPages %>" isOffset="<%= true %>" export="offset,currentPageNumber=pageNumber" scope="request">
</pg:pager>
</html>
|
struts-html
Code Block |
---|
|
<%@ taglib uri="/WEB-INF/struts-html.tld" prefix="html" %>
<%@ taglib uri="/WEB-INF/struts-bean.tld" prefix="bean" %>
<html:html xhtml="true">
<div align="center">
<html:form action="/submitCustomerForm" method="GET" />
</div>
</html:html>
|
Code Block |
---|
|
<%@ taglib uri="/WEB-INF/struts-html.tld" prefix="html" %>
<%@ taglib uri="/WEB-INF/struts-bean.tld" prefix="bean" %>
<html:html xhtml="true">
<div align="center">
<html:link page="/submitCustomerForm" />
</div>
</html:html>
|
struts tags-html
Code Block |
---|
|
<%@ taglib uri="http://jakarta.apache.org/struts/tags-html" prefix="html"%>
<html:html xhtml="true">
<div align="center">
<html:link action="bookEdit.do?do=borrowBook" paramName="book" paramProperty="id" paramId="id">Borrow book</html:link>
</div>
</html:html>
|
struts-tags
Code Block |
---|
|
<%@taglib prefix="s" uri="/struts-tags"%>
<html>
<s:url action="banque" method="consulter" var="urlAcceuil"/>
<s:a href="%{urlAcceuil}">Retour à l'acceuil</s:a>
</html>
|
Code Block |
---|
|
<%@taglib prefix="s" uri="/struts-tags"%>
<html>
<body>
<s:a action="compte" />
</body>
</html>
|
Code Block |
---|
|
<%@taglib prefix="s" uri="/struts-tags"%>
<html>
<body>
<s:form action="compte">
<s:hidden name="contract_nbr" id="contract_nbr" value="%{mod.contract_nbr}"/>
</s:form>
</body>
</html>
|
struts-nested
Code Block |
---|
|
<%@ taglib uri="/tags/struts-nested" prefix="nested" %>
<html:html xhtml="true">
<div align="center">
<nested:form action="modifyAccount.do" />
</div>
</html:html>
|
struts jqgrid
Code Block |
---|
|
<%@taglib prefix="sjg" uri="/struts-jquery-grid-tags" %>
<html>
<sjg:grid id="sjgrid" dataType="json" href="/url" caption="Grid Model" gridModel="gridModel" pager="true" navigator="true">
</sjg:grid>
</html>
|
Code Block |
---|
|
<%@taglib prefix="sjg" uri="/struts-jquery-grid-tags" %>
<html>
<sjg:grid id="sjgrid" dataType="json" editurl="/url" caption="Grid Model" gridModel="gridModel" pager="true" navigator="true">
</sjg:grid>
</html>
|
Code Block |
---|
|
<%@taglib prefix="sjg" uri="/struts-jquery-grid-tags" %>
<html>
<sjg:grid id="sjgrid" dataType="json" cellurl="/url" caption="Grid Model" gridModel="gridModel" pager="true" navigator="true">
</sjg:grid>
</html>
|
Code Block |
---|
|
<%@taglib prefix="sjg" uri="/struts-jquery-grid-tags" %>
<html>
<sjg:gridColumn id="sjgrid" surl="/url">
</sjg:gridColumn>
</html>
|
Code Block |
---|
|
<%@taglib prefix="sjg" uri="/struts-jquery-grid-tags" %>
<html>
<sjg:gridColumn id="sjgrid" editoptions="{dataUrl: '/url'}">
</sjg:gridColumn>
</html>
|
euamtags
Code Block |
---|
|
<%@ taglib uri="WEB-INF/euamtags.tld" prefix="Euam" %>
<div align="center">
<Euam:form action="/submitCustomerForm" />
</div>
|
spring
Code Block |
---|
|
<%@taglib uri = "http://www.springframework.org/tags/form" prefix = "form"%>
<html>
<div align="center">
<form:form method="POST" action="/HelloWeb/addStudent" />
</div>
</html>
|
Code Block |
---|
|
<%@taglib uri = "http://www.springframework.org/tags/form" prefix = "form"%>
<html>
<div align="center">
<form:form method="POST" commandName="changePassword" action="" />
</div>
</html>
|
Web Service calls in razor code (cshtml)
- Html.BeginForm
- Ajax.BeginForm
- Html.Action
- Html.ActionLinkWithAccess
- Html.ActionLink
- Ajax.ActionLink
- Html.RenderAction
- Url.Action
- Url.RouteUrl
- Kendo
Once the HTML5 extension analysis is finished, the analyzer will output the final number of web service calls created.
Html.BeginForm
Code Block |
---|
|
@using (Html.BeginForm("Setting", "Peopulse", FormMethod.Post, new { autocomplete = "off", id = "form-peopulseFtpSettings", @class = "block" }))
{
<input type="submit" name="Submit" />
}
|
Ajax.BeginForm
Code Block |
---|
|
@using (Ajax.BeginForm("Setting", "Peopulse", new { //routeValues
missionId = Model.Mission.Id,
dayId = Model.MissionDayId,
method="GET"
},
new AjaxOptions { //Ajax setup
UpdateTargetId = "synthesisLinesDiv",
HttpMethod = "GET",
InsertionMode = InsertionMode.Replace,
},
new { //htmlAttributes
Id = "form-selectSynthesis",
//method="get"
}))
{
}
|
Html.Action
Code Block |
---|
|
@Html.Action("Delete", "Ctrl", new { id = item.ID })
|
Html.ActionLinkWithAccess
Code Block |
---|
|
@Html.ActionLinkWithAccess(__("Add frequency interim summary"), "AddFrenquencyInterimSummary", null, new {@class = "btn popupLink"})
|
Html.ActionLink
Code Block |
---|
|
@Html.ActionLink("Save", "SaveAction", "MainController", null, new { @class = "saveButton", onclick = "return false;" })
|
Ajax.ActionLink
Code Block |
---|
|
@Ajax.ActionLink("x", "Delete", "NotificationMessenger", new { notific.Id }, new AjaxOptions() { HttpMethod = "POST", OnComplete = "DismissNotification" }, new { @class = "notification-close" })
|
Html.RenderAction
Code Block |
---|
|
@Html.RenderAction("Delete", "Ctrl", new { id = item.ID })
|
Url.Action
Code Block |
---|
|
@{ Html.RenderPartial("_EmployeesTable", @Url.Action("GetFrenquencyInterimSummary")); }
|
Code Block |
---|
|
@using (Html.BeginForm("edit", "Employee", FormMethod.Post))
{
<div class="form-horizontal">
<div class="form-group">
<div class="col-md-offset-2 col-md-10">
<input type="submit" value="Save" name="Edit" formaction="@Url.Action("edit")" formmethod="post" class="btn btn-default"/>
</div>
</div>
</div>
}
|
Code Block |
---|
|
@Html.PagedListPager(Model, page => Url.Action("Index", new { page, sortOrder = ViewBag.CurrentSort, currentFilter = ViewBag.CurrentFilter}))
|
Url.RouteUrl
Code Block |
---|
|
<a href="@(Url.RouteUrl(new{ action="DownloadFile", controller="DPScoreResults", id=Model.QuoteId, scoreRunId=Model.ScoreRunId}))" class="popupLink ico">
|
Kendo
Code Block |
---|
|
<div>
@(Html.Kendo().Grid<ElementControle>()
.Name("gridElementsControle")
.DataSource(datasource =>
datasource.Ajax()
.Read(r => r.Action("GetElementsControle", "GestionUnitesTraitement"))
)
)
</div>
|
External libraries
In HTML5/Javascript ≥ 2.1.21, the analyzer is capable of finding external libraries using package.json files (dependencies and devDependencies sections). It creates external libraries under a folder named "HTML5 external libraries" directly under the project root. One external library is created for each couple (library name, version), and include links are created from the javascript sources to these libraries. Only called libraries are created. Each library object contains a property for the version. These objects are of the type "HTML5 JavaScript Source Code".
External libraries are also created when code like <script src="http://..../jquery.1.2.3.min.js"> is found in html files. The version is searched in the url (here 1.2.3) and the name is extracted (here jquery).
Image Added
Contents of "node_modules" folder
In HTML5/Javascript ≥ 2.1.14, the analyzer is capable of scanning the contents of the "node_modules" folder which contains third-party external libraries. For every external item in the "node_modules" which is called by analyzed source code, a corresponding object will be created by the HTML5/JavaScript analyzer and therefore exposed in the analysis results. The items in the "node_modules" folder are not actually analyzed as such and are still ignored via an entry in the filters.json file. This is one part of a project to expose (in analysis results) called external libraries located in the "node_modules" folder.
Info |
---|
Note that by default, Console will ignore the "node_modules" folder (except in releases 2.5.x and 2.6.x) due to analysis performance issues. Therefore if you require this behaviour, you must manually remove the exclusion pattern knowing that your analysis times may increase: Modern onboarding Image Added
Legacy onboarding Image Added
|
ObjectsThe following objects are displayed in CAST Enlighten:
Icon | Description |
---|
Image Added
| JavaScript file |
Image Added
| HTML5 Source Code |
Image Added
| HTML5 Source Code Fragment |
Image Added
| HTML5 ASP Content |
Image Added
| HTML5 ASPX Content |
Image Added
| HTML5 CSHTML Content |
Image Added
| |
Image Added | HTML5 CSS Source Code Fragment |
Image Added
| HTML5 HTC Content |
Image Added
| HTML5 JavaScript Source Code |
Image Added
| HTML5 JSX source code |
Image Added
| HTML5 Jade source code |
Image Added
| HTML5 Pug source code |
Image Added | HTML5 JavaScript Source Code Fragment |
Image Added
| HTML5 JavaScript Function |
Image Added
| HTML5 Javascript Method |
Image Added
| HTML5 Javascript Class |
Image Added
| HTML5 Javascript Class Constructor |
Image Added | HTML5 WebSocket service |
Image Added
| HTML5 Get XMLHttpRequest Service HTML5 Get HttpRequest Service HTML5 Razor Get service |
Image Added | HTML5 Update XMLHttpRequest Service HTML5 Update HttpRequest Service |
Image Added
| HTML5 Post XMLHttpRequest Service HTML5 Post HttpRequest Service HTML5 Razor method call |
Image Added
| HTML5 Delete XMLHttpRequest Service HTML5 Delete HttpRequest Service |
Image Added
| HTML5 Applet class reference |
Image Added
| J2EE HTML5 Applet |
Structural Rules
A global list is also available here: https://technologies.castsoftware.com/rules?sec=t_1020000&ref=||.
...