use of com.twinsoft.convertigo.beans.core.Sheet in project convertigo by convertigo.
the class GenericRequester method findStyleSheet.
protected void findStyleSheet(String browser) throws EngineException {
// The sheet url may have been already set by error handling...
if (context.absoluteSheetUrl != null)
return;
// TODO: chercher la feuille de style en fonction du locale du client
RequestableObject requestedObject = context.requestedObject;
ISheetContainer lastDetectedObject = context.lastDetectedObject;
InputSource inputSource = null;
try {
if ((context.cacheEntry != null) && (context.cacheEntry.sheetUrl != null)) {
context.sheetUrl = context.cacheEntry.sheetUrl;
context.absoluteSheetUrl = context.cacheEntry.absoluteSheetUrl;
context.contentType = context.cacheEntry.contentType;
if (context.sheetUrl == null) {
// without sheet context...
return;
}
Engine.logContext.debug("Sheet built from the cache");
} else {
Sheet sheet = null;
int sheetLocation = requestedObject.getSheetLocation();
if (sheetLocation == Transaction.SHEET_LOCATION_FROM_LAST_DETECTED_OBJECT_OF_REQUESTABLE) {
Engine.logContext.debug("Sheet location: from last detected screen class");
} else if (sheetLocation == Transaction.SHEET_LOCATION_FROM_REQUESTABLE) {
Engine.logContext.debug("Sheet location: from transaction");
} else {
Engine.logContext.debug("Sheet location: none");
return;
}
Engine.logContext.debug("Searching specific sheet for browser '" + browser + "'...");
switch(sheetLocation) {
default:
case Transaction.SHEET_LOCATION_NONE:
break;
case Transaction.SHEET_LOCATION_FROM_REQUESTABLE:
Engine.logContext.debug("Searching in the transaction");
sheet = requestedObject.getSheet(browser);
break;
case Transaction.SHEET_LOCATION_FROM_LAST_DETECTED_OBJECT_OF_REQUESTABLE:
if (lastDetectedObject != null) {
Engine.logContext.debug("Searching in the last detected screen class (" + ((DatabaseObject) lastDetectedObject).getQName() + ")");
sheet = lastDetectedObject.getSheet(browser);
}
break;
}
if (sheet == null) {
Engine.logContext.debug("No specific sheet has been found; searching for common sheet...");
switch(sheetLocation) {
default:
case Transaction.SHEET_LOCATION_FROM_REQUESTABLE:
Engine.logContext.debug("Searching in the transaction");
sheet = requestedObject.getSheet(Sheet.BROWSER_ALL);
break;
case Transaction.SHEET_LOCATION_FROM_LAST_DETECTED_OBJECT_OF_REQUESTABLE:
if (lastDetectedObject != null) {
Engine.logContext.debug("Searching in the last detected screen class");
sheet = lastDetectedObject.getSheet(Sheet.BROWSER_ALL);
}
break;
}
}
if (sheet == null) {
// without sheet context...
return;
} else {
Engine.logContext.debug("Storing found sheet into the execution context (__currentSheet)");
context.sheetUrl = sheet.getUrl();
}
Engine.logContext.debug("Using XSL data from \"" + context.sheetUrl + "\"");
// Search relatively to the Convertigo servlet application base directory
context.absoluteSheetUrl = context.getProjectDirectory() + "/" + (context.subPath.length() > 0 ? context.subPath + "/" : "") + context.sheetUrl;
Engine.logContext.debug("Url: " + context.absoluteSheetUrl);
File xslFile = new File(context.absoluteSheetUrl);
if (!xslFile.exists()) {
Engine.logContext.debug("The local xsl file (\"" + context.absoluteSheetUrl + "\") does not exist. Trying search in Convertigo XSL directory...");
if (context.sheetUrl.startsWith("../../xsl/"))
context.absoluteSheetUrl = Engine.XSL_PATH + "/" + context.sheetUrl.substring(10);
else
context.absoluteSheetUrl = Engine.XSL_PATH + "/" + context.sheetUrl;
Engine.logContext.debug("Url: " + context.absoluteSheetUrl);
xslFile = new File(context.absoluteSheetUrl);
if (!xslFile.exists()) {
Engine.logContext.debug("The common xsl file (\"" + context.absoluteSheetUrl + "\") does not exist. Trying absolute search...");
context.absoluteSheetUrl = context.sheetUrl;
Engine.logContext.debug("Url: " + context.absoluteSheetUrl);
}
}
Engine.logContext.debug("Retrieving content type from the XSL...");
// inputSource = new InputSource(new FileInputStream(context.absoluteSheetUrl));
inputSource = new InputSource(new File(context.absoluteSheetUrl).toURI().toASCIIString());
DocumentBuilder documentBuilder = XMLUtils.getDefaultDocumentBuilder();
documentBuilder.setEntityResolver(XMLUtils.getEntityResolver());
Document document = documentBuilder.parse(inputSource);
NodeList nodeList = document.getElementsByTagName("xsl:output");
String contentType = MimeType.Html.value();
if (nodeList.getLength() != 0) {
Element element = (Element) nodeList.item(0);
contentType = element.getAttribute("media-type");
if (contentType.length() == 0) {
Engine.logContext.warn("No media type is specified into the XSL style sheet \"" + context.sheetUrl + "\"; using default (\"text/html\"). You should use <xsl:output media-type=\"...\" ...> directive.");
contentType = MimeType.Html.value();
}
Engine.logContext.debug("Content-type=" + contentType);
} else {
Engine.logContext.warn("No media type is specified into the XSL style sheet \"" + context.sheetUrl + "\"; using default (\"text/html\"). You should use <xsl:output media-type=\"...\" ...> directive.");
}
context.contentType = contentType;
}
// Updating the cache entry properties if needed
if (context.cacheEntry != null) {
context.cacheEntry.contentType = context.contentType;
context.cacheEntry.sheetUrl = context.sheetUrl;
context.cacheEntry.absoluteSheetUrl = context.absoluteSheetUrl;
try {
Engine.theApp.cacheManager.updateCacheEntry(context.cacheEntry);
Engine.logContext.debug("Sheet stored into the cache entry; updating its XSL and content type properties...");
} catch (Exception e) {
Engine.logContext.error("(CacheManager) Unable to update the cache entry!", e);
}
}
} catch (Exception e) {
throw new EngineException("An unexpected error has occured while finding the sheet for the transaction \"" + requestedObject.getName() + "\".", e);
} finally {
try {
if (inputSource != null) {
InputStream inputStream = inputSource.getByteStream();
if (inputStream != null)
inputStream.close();
}
} catch (IOException e) {
throw new EngineException("Unable to close the sheet file for the transaction \"" + requestedObject.getName() + "\".", e);
}
}
}
use of com.twinsoft.convertigo.beans.core.Sheet in project convertigo by convertigo.
the class ProjectUtils method getStatByProject.
public static Map<String, String> getStatByProject(Project project) throws Exception {
final Map<String, String> result = new HashMap<String, String>();
try {
if (project != null) {
try {
new WalkHelper() {
String displayString = "";
@SuppressWarnings("unused")
int depth = 0;
int sequenceJavascriptLines;
int sequenceJavascriptFunction;
int connectorCount = 0;
int httpConnectorCount = 0;
int httpsConnectorCount = 0;
int htmlConnectorCount = 0;
int cicsConnectorCount = 0;
int siteClipperConnectorCount = 0;
int sqlConnectorCount = 0;
int javelinConnectorCount = 0;
int htmlScreenclassCount = 0;
int htmlCriteriaCount = 0;
int siteClipperScreenclassCount = 0;
int siteClipperCriteriaCount = 0;
int htmlExtractionRuleCount = 0;
int htmlTransactionVariableCount = 0;
int sqlTransactionVariableCount = 0;
int javelinTransactionVariableCount = 0;
int javelinScreenclassCount = 0;
int javelinCriteriaCount = 0;
int javelinExtractionRuleCount = 0;
int javelinEntryHandlerCount = 0;
int javelinExitHandlerCount = 0;
int javelinHandlerCount = 0;
int javelinJavascriptLines = 0;
int statementCount = 0;
int poolCount = 0;
int handlerstatementCount = 0;
@SuppressWarnings("unused")
int reqVariableCount = 0;
int sequenceVariableCount = 0;
@SuppressWarnings("unused")
int transactionVariableCount = 0;
int testcaseVariableCount = 0;
int testcaseCount = 0;
int sequenceCount = 0;
int stepCount = 0;
int sheetCount = 0;
int referenceCount = 0;
int selectInQueryCount = 0;
/*
* transaction counters
*/
@SuppressWarnings("unused")
int transactionCount = 0;
@SuppressWarnings("unused")
int transactionWithVariablesCount = 0;
int htmltransactionCount = 0;
int httpTransactionCount = 0;
int httpsTransactionCount = 0;
int xmlHttpTransactionCount = 0;
int xmlHttpsTransactionCount = 0;
int jsonHttpTransactionCount = 0;
int jsonHttpsTransactionCount = 0;
int proxyTransactionCount = 0;
int siteClipperTransactionCount = 0;
int javelinTransactionCount = 0;
int sqlTransactionCount = 0;
int totalC8oObjects = 0;
public void go(DatabaseObject project) {
try {
String projectName = project.getName();
init(project);
connectorCount = htmlConnectorCount + httpConnectorCount + httpsConnectorCount + cicsConnectorCount + siteClipperConnectorCount + sqlConnectorCount + javelinConnectorCount;
totalC8oObjects = 1 + // connectors
connectorCount + htmlScreenclassCount + htmlCriteriaCount + htmlExtractionRuleCount + htmlTransactionVariableCount + handlerstatementCount + statementCount + javelinScreenclassCount + javelinCriteriaCount + javelinExtractionRuleCount + javelinTransactionCount + javelinEntryHandlerCount + javelinExitHandlerCount + javelinHandlerCount + javelinTransactionVariableCount + sqlTransactionCount + sqlTransactionVariableCount + sheetCount + jsonHttpTransactionCount + jsonHttpsTransactionCount + xmlHttpTransactionCount + xmlHttpsTransactionCount + httpTransactionCount + httpsTransactionCount + proxyTransactionCount + siteClipperTransactionCount + siteClipperScreenclassCount + siteClipperCriteriaCount + sequenceCount + stepCount + sequenceVariableCount + sequenceJavascriptFunction + poolCount + referenceCount + testcaseCount + testcaseVariableCount;
displayString = // ok
totalC8oObjects + " object(s)<br/>" + connectorCount + // ok
" connector(s)";
result.put(projectName, displayString);
if (htmltransactionCount > 0) {
displayString = // ok
(htmlScreenclassCount > 0 ? " screenclassCount = " + htmlScreenclassCount + "<br/>" : "") + (htmlCriteriaCount > 0 ? " criteriaCount = " + htmlCriteriaCount + "<br/>" : "") + (htmlExtractionRuleCount > 0 ? " extractionRuleCount = " + htmlExtractionRuleCount + "<br/>" : "") + " transactionCount = " + htmltransactionCount + // ok
"<br/>" + (htmlTransactionVariableCount > 0 ? " transactionVariableCount = " + htmlTransactionVariableCount + "<br/>" : "") + " statementCount (handlers=" + handlerstatementCount + ", statements=" + statementCount + ", total=" + (int) (handlerstatementCount + statementCount) + ")";
result.put("HTML connector", displayString);
}
/*
* javelin connector
*/
if (javelinScreenclassCount > 0) {
displayString = // ok
" screenclassCount = " + javelinScreenclassCount + "<br/>" + (javelinCriteriaCount > 0 ? " criteriaCount = " + javelinCriteriaCount + "<br/>" : "") + (javelinExtractionRuleCount > 0 ? " extractionRuleCount = " + javelinExtractionRuleCount + "<br/>" : "") + // ok
(javelinTransactionCount > 0 ? " transactionCount = " + javelinTransactionCount + "<br/>" : "") + " handlerCount (Entry = " + javelinEntryHandlerCount + ", Exit = " + javelinExitHandlerCount + ", Screenclass = " + javelinHandlerCount + "), total = " + (int) (javelinEntryHandlerCount + javelinExitHandlerCount + javelinHandlerCount) + " in " + javelinJavascriptLines + " lines<br/>" + (javelinTransactionVariableCount > 0 ? " variableCount = " + javelinTransactionVariableCount : "");
result.put("Javelin connector", displayString);
}
/*
* SQL connector
*/
if (sqlTransactionCount > 0) {
displayString = // ok
" sqltransactionCount = " + sqlTransactionCount + "<br/>" + // ok
(selectInQueryCount > 0 ? " selectInQueryCount = " + selectInQueryCount + "<br/>" : "") + (sqlTransactionVariableCount > 0 ? " transactionVariableCount = " + sqlTransactionVariableCount : "");
if (sheetCount > 0) {
displayString += "<br/>Sheets<br/>" + " sheetCount = " + sheetCount;
}
result.put("SQL connector", displayString);
}
/*
* Http connector
*/
if (httpConnectorCount > 0) {
displayString = " connectorCount = " + httpConnectorCount + "<br/>";
}
if (jsonHttpTransactionCount > 0) {
displayString += // ok
" JSONTransactionCount = " + jsonHttpTransactionCount + "<br/>" + // ok
(xmlHttpTransactionCount > 0 ? " XmlTransactionCount = " + xmlHttpTransactionCount + "<br/>" : "") + (httpTransactionCount > 0 ? " HTTPtransactionCount = " + httpTransactionCount : "");
result.put("HTTP connector", displayString);
}
/*
* Https connector
*/
if (httpsConnectorCount > 0) {
displayString = " connectorCount = " + httpsConnectorCount + "<br/>" + // ok
(jsonHttpsTransactionCount > 0 ? " JSONTransactionCount = " + jsonHttpsTransactionCount + "<br/>" : "") + // ok
(xmlHttpsTransactionCount > 0 ? " XmlTransactionCount = " + xmlHttpsTransactionCount + "<br/>" : "") + // ok
(httpsTransactionCount > 0 ? " HTTPStransactionCount = " + httpsTransactionCount : "");
result.put("HTTPS connector", displayString);
}
/*
* Proxy connector
*/
if (proxyTransactionCount > 0) {
displayString = " TransactionCount = " + proxyTransactionCount;
result.put("Proxy connector", displayString);
}
/*
* Siteclipper connector
*/
if (siteClipperTransactionCount > 0) {
displayString = // ok
" TransactionCount = " + siteClipperTransactionCount + "<br/>" + // ok
(siteClipperScreenclassCount > 0 ? " screenclassCount = " + siteClipperScreenclassCount + "<br/>" : "") + (siteClipperCriteriaCount > 0 ? " criteriaCount = " + siteClipperCriteriaCount : "");
result.put("SiteClipper connector", displayString);
}
/*
* Sequencer
*/
if (sequenceCount > 0) {
displayString = // ok
" sequenceCount = " + sequenceCount + "<br/>" + // ok
(stepCount > 0 ? " stepCount = " + stepCount + "<br/>" : "") + (sequenceVariableCount > 0 ? " variableCount = " + sequenceVariableCount + "<br/>" : "") + " javascriptCode = " + sequenceJavascriptFunction + " functions in " + sequenceJavascriptLines + " lines" + ((boolean) (sequenceJavascriptFunction == 0) ? " (declarations or so)" : "");
result.put("Sequencer", displayString);
}
if (poolCount > 0) {
displayString = " poolCount = " + poolCount;
result.put("Pools", displayString);
}
if (referenceCount > 0) {
displayString = " referenceCount = " + referenceCount;
result.put("References", displayString);
}
if (testcaseCount > 0) {
displayString = " testcaseCount = " + testcaseCount + "<br/>" + (testcaseVariableCount > 0 ? " testcaseVariableCount = " + testcaseVariableCount : "");
result.put("Test cases", displayString);
}
} catch (Exception e) {
e.printStackTrace();
}
}
@Override
protected void walk(DatabaseObject databaseObject) throws Exception {
depth++;
// deal with connectors
if (databaseObject instanceof Connector) {
if (databaseObject instanceof HtmlConnector) {
htmlConnectorCount++;
} else if (databaseObject instanceof HttpConnector) {
if (((HttpConnector) databaseObject).isHttps())
httpsConnectorCount++;
else
httpConnectorCount++;
} else if (databaseObject instanceof CicsConnector) {
cicsConnectorCount++;
} else if (databaseObject instanceof SiteClipperConnector) {
siteClipperConnectorCount++;
} else if (databaseObject instanceof SqlConnector) {
sqlConnectorCount++;
} else if (databaseObject instanceof JavelinConnector) {
javelinConnectorCount++;
}
} else // deal with screenclasses
if (databaseObject instanceof ScreenClass) {
if (databaseObject instanceof JavelinScreenClass) {
// deal with javelinScreenClasses
javelinScreenclassCount++;
} else if (databaseObject instanceof SiteClipperScreenClass) {
// deal with siteClipperScreenClasses
siteClipperScreenclassCount++;
} else {
// deal with html ScreenClasses
htmlScreenclassCount++;
}
} else if (databaseObject instanceof Criteria) {
if (databaseObject.getParent() instanceof JavelinScreenClass) {
javelinCriteriaCount++;
} else if (databaseObject.getParent() instanceof SiteClipperScreenClass) {
siteClipperCriteriaCount++;
} else {
htmlCriteriaCount++;
}
} else if (databaseObject instanceof ExtractionRule) {
if (databaseObject.getParent() instanceof JavelinScreenClass) {
javelinExtractionRuleCount++;
} else {
htmlExtractionRuleCount++;
}
} else if (databaseObject instanceof Transaction) {
if (databaseObject instanceof TransactionWithVariables) {
if (databaseObject instanceof HtmlTransaction) {
htmltransactionCount++;
} else if (databaseObject instanceof JsonHttpTransaction) {
if (((HttpConnector) databaseObject.getParent()).isHttps())
jsonHttpsTransactionCount++;
else
jsonHttpTransactionCount++;
} else if (databaseObject instanceof HttpTransaction) {
if (((HttpConnector) databaseObject.getParent()).isHttps())
httpsTransactionCount++;
else
httpTransactionCount++;
} else if (databaseObject instanceof XmlHttpTransaction) {
if (((HttpConnector) databaseObject.getParent()).isHttps())
xmlHttpsTransactionCount++;
else
xmlHttpTransactionCount++;
} else if (databaseObject instanceof ProxyTransaction) {
proxyTransactionCount++;
} else if (databaseObject instanceof SiteClipperTransaction) {
siteClipperTransactionCount++;
} else if (databaseObject instanceof JavelinTransaction) {
JavelinTransaction javelinTransaction = (JavelinTransaction) databaseObject;
// Functions
String line;
int lineNumber = 0;
BufferedReader br = new BufferedReader(new StringReader(javelinTransaction.handlers));
while ((line = br.readLine()) != null) {
line = line.trim();
lineNumber++;
if (line.startsWith("function ")) {
try {
String functionName = line.substring(9, line.indexOf(')') + 1);
if (functionName.endsWith(JavelinTransaction.EVENT_ENTRY_HANDLER + "()")) {
// TYPE_FUNCTION_SCREEN_CLASS_ENTRY
javelinEntryHandlerCount++;
} else if (functionName.endsWith(JavelinTransaction.EVENT_EXIT_HANDLER + "()")) {
// TYPE_FUNCTION_SCREEN_CLASS_EXIT
javelinExitHandlerCount++;
} else {
// TYPE_OTHER
javelinHandlerCount++;
}
} catch (StringIndexOutOfBoundsException e) {
// Ignore
}
}
}
// compute total number of lines of javascript
javelinJavascriptLines += lineNumber;
javelinTransactionCount++;
} else if (databaseObject instanceof SqlTransaction) {
SqlTransaction sqlTransaction = (SqlTransaction) databaseObject;
/*
* count the number of SELECT
*/
String query = sqlTransaction.getSqlQuery();
if (query != null) {
query = query.toLowerCase();
String pattern = "select";
int lastIndex = 0;
while (lastIndex != -1) {
lastIndex = query.indexOf(pattern, lastIndex);
if (lastIndex != -1) {
selectInQueryCount++;
lastIndex += pattern.length();
}
}
}
sqlTransactionCount++;
}
transactionWithVariablesCount++;
} else {
// transaction with no variables
transactionCount++;
}
} else // deal with statements
if (databaseObject instanceof Statement) {
// System.out.println(databaseObject.getClass().getName() + "\r\n");
if (databaseObject instanceof HandlerStatement) {
handlerstatementCount++;
} else {
statementCount++;
}
} else // deal with variables
if (databaseObject instanceof Variable) {
if (databaseObject.getParent() instanceof Transaction) {
if (databaseObject.getParent() instanceof JavelinTransaction) {
javelinTransactionVariableCount++;
} else if (databaseObject.getParent() instanceof HtmlTransaction) {
htmlTransactionVariableCount++;
} else if (databaseObject.getParent() instanceof SqlTransaction) {
sqlTransactionVariableCount++;
} else {
// should be zero
transactionVariableCount++;
}
} else if (databaseObject.getParent() instanceof Sequence) {
sequenceVariableCount++;
} else if (databaseObject.getParent() instanceof TestCase) {
testcaseVariableCount++;
}
} else if (databaseObject instanceof TestCase) {
testcaseCount++;
} else if (databaseObject instanceof Sequence) {
sequenceCount++;
} else if (databaseObject instanceof Step) {
if (databaseObject instanceof SimpleStep) {
SimpleStep simpleStep = (SimpleStep) databaseObject;
// Functions
String line;
int lineNumber = 0;
BufferedReader br = new BufferedReader(new StringReader(simpleStep.getExpression()));
while ((line = br.readLine()) != null) {
line = line.trim();
lineNumber++;
if (line.startsWith("function ")) {
try {
sequenceJavascriptFunction++;
} catch (StringIndexOutOfBoundsException e) {
// Ignore
}
}
}
sequenceJavascriptLines += lineNumber;
stepCount++;
} else
stepCount++;
} else if (databaseObject instanceof Sheet) {
sheetCount++;
} else if (databaseObject instanceof Pool) {
poolCount++;
}
super.walk(databaseObject);
}
}.go(project);
} catch (Exception e) {
// Just ignore, should never happen
}
}
} catch (Throwable e) {
throw new Exception("Unable to compute statistics of the project!: \n" + e.getMessage());
} finally {
}
return result;
}
use of com.twinsoft.convertigo.beans.core.Sheet in project convertigo by convertigo.
the class SheetTreeObject method openXslEditor.
public void openXslEditor(IProject project) {
Sheet sheet = getObject();
String parentStyleSheet = sheet.getUrl();
Path filePath = new Path(sheet.getUrl());
IFile file = project.getFile(filePath);
IWorkbenchPage activePage = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage();
if (activePage != null) {
try {
activePage.openEditor(new FileEditorInput(file), "org.eclipse.wst.xml.ui.internal.tabletree.XMLMultiPageEditorPart");
} catch (PartInitException e) {
ConvertigoPlugin.logException(e, "Error while loading the xsl editor '" + parentStyleSheet + "'");
}
}
}
use of com.twinsoft.convertigo.beans.core.Sheet in project convertigo by convertigo.
the class CreateFormFromTransactionAction method run.
public void run() {
Display display = Display.getDefault();
Cursor waitCursor = new Cursor(display, SWT.CURSOR_WAIT);
Shell shell = getParentShell();
shell.setCursor(waitCursor);
try {
ProjectExplorerView explorerView = getProjectExplorerView();
if (explorerView != null) {
Transaction transaction = null;
Connector connector = null;
TreeObject treeObject = explorerView.getFirstSelectedTreeObject();
if (treeObject instanceof TransactionTreeObject) {
transaction = (Transaction) treeObject.getObject();
connector = (Connector) transaction.getParent();
if (transaction instanceof TransactionWithVariables) {
TransactionWithVariables tr = (TransactionWithVariables) transaction;
// if (tr.getVariablesDefinitionSize() == 0) {
if (tr.numberOfVariables() == 0) {
MessageBox messageBox = new MessageBox(shell, SWT.YES | SWT.APPLICATION_MODAL);
messageBox.setMessage("No variables are defined for transaction " + tr.getName());
messageBox.open();
} else {
String xslContent = generateXSLForm(connector, tr);
// Refresh project resource
IProject project = ConvertigoPlugin.getDefault().getProjectPluginResource(tr.getProject().getName());
// Compute the targetXSL file name
String xslForm = tr.getName() + "Request.xsl";
IFile file = project.getFile(xslForm);
ByteArrayInputStream bais = new ByteArrayInputStream(xslContent.getBytes());
if (file.exists()) {
file.setContents((InputStream) bais, IFile.FORCE | IFile.KEEP_HISTORY, null);
} else {
file.create((InputStream) bais, true, null);
}
TransactionWithVariables newTrans = (TransactionWithVariables) tr.clone();
newTrans.hasChanged = true;
newTrans.bNew = true;
XMLVector<XMLVector<Long>> orderedVariables = new XMLVector<XMLVector<Long>>();
orderedVariables.add(new XMLVector<Long>());
newTrans.setOrderedVariables(orderedVariables);
newTrans.setSheetLocation(Transaction.SHEET_LOCATION_FROM_REQUESTABLE);
HandlerStatement handler = new HandlerStatement(HandlerStatement.EVENT_TRANSACTION_STARTED, HandlerStatement.RETURN_CANCEL);
newTrans.add(handler);
newTrans.setName(tr.getName() + "Request");
Sheet sheet = new Sheet();
sheet.setBrowser("*");
sheet.setUrl(xslForm);
newTrans.addSheet(sheet);
connector.add(newTrans);
postCreate(treeObject.getConnectorTreeObject(), newTrans);
}
}
}
}
} catch (Throwable e) {
ConvertigoPlugin.logException(e, "Unable to generate a requestForm widget");
} finally {
shell.setCursor(null);
waitCursor.dispose();
}
}
Aggregations