Where to deploy custom XSQL action handlers?
I need to write some custom XSQL action handlers in Java. I am using JDeveloper 3.2 with the Oracle HTTP Server (= Apache + JServ) on Windows NT 4.0.
When I complete my action handler(s) and package them into a JAR file, where do I put them so they are picked up by the server? If I run a test XSQL page from JDeveloper, Web-to-Go finds it if I put the JAR file under Apache\Web-inf\lib, but not when I try it from a browser.
The Muench book (p. 602-603): "...make sure this .jar is included in the server CLASSPATH...". Is that different from the system-level classpath? Would that be in jserv.properties or where?
Is there a document that walks you through this particular jungle?
Best regards,
Jere
null
Thanks Eric,
it helped. The JAR file just needs to be in the JServ path. I'm still at loss though how to configure JServ so that the JAR gets reloaded if (when) it changes. It is a pain to restart Oracle HTTP server every time I change the JAR file, which is often during development. I thought of playing around with servlet zones, but decided not to waste time since action handlers are not really servlets.
--Jere
null
Similar Messages
-
XSQL Action Handlers vs. Java extentions
Dear OTN team,
You mentioned that you're planning to eliminate Action handlers and replace them by XSLT/Java extension API. In fact, you already have it. When I replaced the old parser by the newest one, there is release notes and extension readme files that allow any Java classes and 2 Oracle extensions (output and node-set()).
I used it quite extensively with JDeveloper 3.1 and it works!
Therefore, I have 1 question and 2 suggestions.
Q: What is the impact of doing this - IAS, Portal-To-Go, XSQL engine standalone?
S1: It seems almost mandatory to have an extension function nodeSetToString() (and ResultSetToString(), however it just a shortcut to
nodeSetToString(node-set(<<result-set>>)) ).
S2: At present time a CLOB field is required to be transformed to CDATA in order to be inserted, which is not natural and requires S2. Wouldn't it be better if XSU will handle it automatically? It is very easy for Oracle to implement, because, I suppose, in XMLSave you parsing using a top-to-bottom approach.
Thank you,
Dmitriy<BLOCKQUOTE><font size="1" face="Verdana, Arial">quote:</font><HR>Originally posted by Steven Muench ([email protected]):
A future version of XSQL Pages will integrate the XSQL Action Handlers as XSLT extension elements. At present, the Oracle XSLT engine supports extension functions but not extension elements.
I don't understand the question about impact on IAS, Portal-to-go, or XSQL in this regard.
On your S2, can you be more precise about what you'd like XSU to handle automatically?<HR></BLOCKQUOTE>
Steve,
1. Regarding IAS,XSQL and so on: what is the performance the extension functions vs. the Action Handlers. Are there any issues with caching and so forth? Do you recommend their usage for now?
2. Now in order to combine fixed table columns with XML in CLOBs for the flexible content XSU automatically converts CLOBs into CDATA which is not natural for this kind of scenario. Moreover, it is quite painful during insertion. To make posted XML to be inserted into table/view one should write DocumentFragment-to-String type function as extension and use it in the XSL to transform CLOB related XML tag and its contents into CDATA! Plus the XSQL documentation doesn't say anything about that.
It'd be nice to have a special attribute in the xsql:query, xslq:insert, xsql:update, xsql:delete(?) to enable/disable CLOB-to-XML-fragment or CLOB-to-CDATA transformation for the set of tags (probably space separated).
Plus, it seems almost imperative to have the oracle implemented DocumentFragment-to-String extention function.
Thank you,
Dmitriy -
Error while deploying, Custom Style Skin in OBIEE 11.1.1.6.7
Hi,
I have deployed Custom Style Skin in OBIEE 11.1.1.5 successfuly (with the help of http://www.rittmanmead.com/2010/12/oracle-bi-ee-11g-styles-skins-custom-xml-messages/ ).
Now when we're moving RPD, Catalog & Custom Style Skin from OBIEE 11.1.1.5 to OBIEE 11.1.1.6.7, I could deploy RPD & Catalog but am not able to deploy Custom Style & Skin Folders.
If you are aware of the process of deploying Custom Style & Skins (as mentioned in the link above), it requies:
1. Custom Style & Skins folder to be Deploy using Weblogic Console.
2. Making necessary changes in instanceconfig.xml (to point to the deployed folder) ---- this is where it's failing.
When I do add necessary tags ( <URL> & <UI>) in instanceconfig.xml and restart Services. Presentation Services dosen't come up. Error message that is in log file is:
In element URL: Can not have element children within a simple content.
unknown element 'UI'
Element 'UI' is not valid for content model : 'All(URL, SocketTimeoutSec,FileSizeMB)'
Any pointers?
Regards,
JitendraHi,
I too faced such issue, actually obiee11.1.1.5 version skin and style wont work in obiee11.1.1.6.0 and above patch ..
u have do it once again by using obiee11.1.1.6.0 skin (because the 11.1.16.0 has UI and skin different from 11.1.1.5.0 )
Thanks
Deva -
Documentation for Custom Disposition Action services in URM
In 11g URM, the documentation references the ability to create a custom disposition action by accessing one of the pre-defined services and passing parameters. Unfortunately I can not find documentation stating what the parameters are for each of the services available. Does anyone know if documentation exists and where I can find it?
Thanks.Just for posterity. The records management services are here:
http://docs.oracle.com/cd/E14571_01/doc.1111/e11011/c11_rm002.htm#i1081443
but the link provided got me close enough to find them. -
Where to Place Custom Java Code
We are planning on adding customized Java code to Identity Manager 8; XPRESS will be used to call the customized Java code.
Questions:
1) Where does this customised code reside in the Java Application Server (Glassfish)?
2) Does the customized Java code have to be packaged in a JAR file?
Many thanks for your help.You would deploy custom Java code along with the IDM war/ear file. Classes go in the WEB-INF/classes/ folder, JARs in WEB-INF/lib/ and that is application server independant.
Class files or JARs? Do you have any build process for your IDM, like the custom build environment CBE, then the source files might end up as class files; if you are using a seperate build environment for those custom classes, then packaging them in a JAR would be the way to go.
Generally speaking, using a JAR for your custom code is neater; whether a class in classes/com/foo/bar/Foo.class or in lib/myfoobars.jar takes precedence over the other is up to the class loader and depending on your application server and its settings, the behavior might vary - so be careful about mixing use of those locations. -
Hi,
I have wrote the following custom XSQL Serializer to render the PDF.
import org.w3c.dom.Document;
import org.apache.log.Hierarchy;
import org.apache.fop.messaging.MessageHandler;
import oracle.xml.xsql.XSQLPageRequest;
import oracle.xml.xsql.XSQLDocumentSerializer;
import org.apache.fop.apps.Driver;
import org.apache.log.output.NullOutputLogTarget;
//Avalon
import org.apache.avalon.framework.ExceptionUtil;
import org.apache.avalon.framework.logger.ConsoleLogger;
import org.apache.avalon.framework.logger.Logger;
/**Customized serialize for FOP
* Tested with the FOP 0.20.3RC release from 19-Jan-2002
public class renderPDF implements XSQLDocumentSerializer {
private static final String PDFMIME = "application/pdf";
public void serialize(Document doc, XSQLPageRequest env) throws Throwable {
try {
// First make sure we can load the driver
Driver FOPDriver = new Driver();
// Tell FOP not to spit out any messages by default.
// You can modify this code to create your own FOP Serializer
// that logs the output to one of many different logger targets
// using the Apache LogKit API
//Setup logger
Logger logger = new ConsoleLogger(ConsoleLogger.LEVEL_DISABLED);
FOPDriver.setLogger(logger);
// Some of FOP's messages appear to still use MessageHandler.
MessageHandler.setOutputMethod(MessageHandler.NONE);
// Then set the content type before getting the reader/
env.setContentType(PDFMIME);
FOPDriver.setOutputStream(env.getOutputStream());
FOPDriver.setRenderer(FOPDriver.RENDER_PDF);
FOPDriver.render(doc);
catch (Exception e) {
// Cannot write PDF output for the error anyway.
// So maybe this stack trace will be useful info
e.printStackTrace(System.err);
When I run this code from the Jdeveloper using the embeded server, everything works fine, but when I deploy the code to Tomcat I am getting the following error I am using the FOP 20_03 Jar files and Jdeveloper 9.03
Oracle XDK Java 9.0.3.0.0 ProductionXSQL-023: Class servlet.renderPDF is not an XSQL Serializer
I have the following statement in XSQL page to call the custom XSQL serializer
<?xml-stylesheet type="text/xsl" href="xsl/invoice_pdf.xsl" serializer="java:servlet.renderPDF" ?>
Any comments or solution will be really appericated:
Thanks in advance:
MohammadI'm trying to write a servlet in jDeveloper to take the XML document produced by XSQLRequest and an XSL (FO) file and produce a PDF response. So far I am unable to get jDeveloper to be able to find the Apache FOP jar files.
How did you get jDeveloper to be able to find the Apache FOP jar files?
Thanks in advance,
Tom. -
Deploying custom templates only shows first template
Hi guys, I'm having an issue deploying custom templates.
I have followed the steps outlined here (http://technet.microsoft.com/en-us/library/cc178976.aspx) but when I open up Word/New I see the "CompanyName" under custom templates but when I open it I only see the first template "Letter".
I created the following entry in the registry:
HKEY_Current_User\Software\Microsoft\Office\14.0\Common\Spotlight\Providers\Companyname with a string ServiceURL pointing to the path of the xml file.
The XML file contains:
<?xml version="1.0" encoding="utf-8"?>
<o:featuredcontent lcid="1033" xmlns:o="urn:schemas-microsoft-com:office:office">
<o:application id="WD">
<o:featuredtemplates startdate="2011-03-01" enddate="2015-03-01">
<!-- TEMPLATE 1 -->
<o:featuredtemplate title="Letter" source="C:\Program Files (x86)\Microsoft Office\Templates\Companyname\Letter.dotx" >
</o:featuredtemplate>
<!-- TEMPLATE 2 -->
<o:featuredtemplate title="Budget" source="C:\Program Files (x86)\Microsoft Office\Templates\Companyname\Budget.dotx" >
</o:featuredtemplate>
</o:featuredtemplates>
</o:application>
</o:featuredcontent>
I read in another post (http://social.technet.microsoft.com/Forums/en-US/officesetupdeploy/thread/fbc4bf23-c9fb-4a6c-a981-49f68127bf77/) where someone was having the same problem and advised deleting the ..Spotlight\Content\Companyname\WD1031 reg key but that
hasn't help. I still only see 1 template.
Any help would be appreciated.Step.1
Close Word and delete the following registry key
HKEY_CURRENT_USER\Software\Microsoft\Office\14.0\Common\Spotlight\Content
Step.2
Replace your XML file with the following sample
<?xml version="1.0" encoding="utf-8"?>
<o:featuredcontent lcid="1033" xmlns:o="urn:schemas-microsoft-com:office:office">
<o:application id="WD">
<o:featuredtemplates startdate="2011-03-01" enddate="2015-03-01">
<!-- TEMPLATE 1 -->
<o:featuredtemplate title="Letter" source="C:\Program Files (x86)\Microsoft Office\Templates\Companyname\Letter.dotx" >
<o:media mediatype="" filename="" source="" />
<o:preview filename="" source="" />
</o:featuredtemplate>
<!-- TEMPLATE 2 -->
<o:featuredtemplate title="Budget" source="C:\Program Files (x86)\Microsoft Office\Templates\Companyname\Budget.dotx" >
<o:media mediatype="" filename="" source="" />
<o:preview filename="" source="" />
</o:featuredtemplate>
</o:featuredtemplates>
</o:application>
</o:featuredcontent>
Tips: Keep <o:media ---> and <o:preview ---> even you don't use them.
Step.3
Restart Word, check result
Max Meng
TechNet Community Support -
Can I make a custom folder action that auto-shares images?
Is it possible to create a custom Folder Action where any images I drop into there are auto shared to Flickr? I have my Flickr account setup in Mountain Lion already.
I think there will be no out of the box solution but with Automator I think you could accomplish this task.
-
How to deploy customer extensions in EJB-Server?
Hello,
I would like to know, what is the best way to deploy customer extensions
to a J2EE application (which is deployed as an .ear file) .
I am using a configurable dynamic class loading to allow product
customization (usually implementations of interfaces).
I know some possible solutions, but...
1. solution: the customer provides its product extensions as a jar file
which is then located in the classpath of the J2EE server.
But I dislike this solution, beause it requires a server restart if the
customer extensions are redeployed and further on, depending on the
customer company's security restricition, no access to the J2EE server's
CLASSPATH might be granted.
2. solution: the customer opens the .ear file of our product, adds its
extension.jar to it and the extension.jar has to have a predefined name.
By that we can make sure, that the classloader finds this jar (because
it can be referenced in the classpath of the manifest.mf of the ejb.jar,
it will do no harm, if it does not exist).
What do you think about this?
Are there other possible solutions?
Best regards from sunny Black Forest, Germany,
Mattiniis doesnt have jsp engine to work on ur jsp..it can rather redirects to ur webserver where u can put ur jsp and make it run ther..
rgds
Shanu -
Mobiliser : Deploying custom code to SMP 3.0
Hi Experts,
We have developed few custom use cases on top of standalone Mobiliser 5.1 SP01 (Linux server).
Same use case we are trying to deploy it to Mobiliser 5.1 SP03 and on SMP 3.0 SP03.
1. I hope As-Is code which is developed on SP01 will not fit SP03, please confirm on this.
2. Please let us know any guideline document how to migrate code from SP01 to SP03
3. How to deploy custom code on SMP 3.0.
With regards
Shankar.KSee my Answers below:
1. I hope As-Is code which is developed on SP01 will not fit SP03, please confirm on this.
Your code should have no impact unless there are some backend dependences. With SP03, additional OSGI bundles are copied to server and tomcat application (incase Money Mobiliser is used)
2. Please let us know any guideline document how to migrate code from SP01 to SP03
You can find the upgrade document here: https://websmp108.sap-ag.de/instguides Once at the support portal just navigate to SAP Mobile > Sybase Mobiliser Platform > Mobiliser Platform 5.1 SP03 on the left side of the screen then open Mobiliser Platform Upgrade Guide for SP03
The vital part of the upgrade process is making sure that the DB backend, where the SP 03 Money folder will be retrieving its data from, is upgraded properly. To help alleviate any further confusion:
1. You will not be using the SP01 money folder or anything else in that directory anymore
2. Everything that you need for the upgrade will be in the Mobiliser SP03 zip file that the customer should have.
3. Upgrade the DB backend schema in the manner specified in the document
4. You will need to perform some slight configurations to the Mobiliser SP03 money folder to successfully communicate with the DB upgrade that was performed in Step 3. The configurations are referenced in the Mobiliser Installation manual for SP03.
3. How to deploy custom code on SMP 3.0.
refer following:
http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/30ae5b68-78a0-3010-6fa3-c1742e0195c0?overridelayout=true
Regards, Kiran -
Read External List Field on Custom ECB action
I tryed to show a Custom ECB action on an External List.
The External List have a Field "LOGICAL_ID" with an IP address, but the GetAttributeFromItemTable works only with Standard List.
How i read the External List Field and open some shell or browser actions with these field?
<script language="Javascript" unselectable="on">
// START: Override Function
function Custom_AddListMenuItems(m,ctx)
var strDisplayText = "Ping";
var strDisplayText1 = "Browse Http";
var strDisplayText2 = "Telnet";
var strDisplayText3 = "SSH";
var strDisplayText4 = "Remote Desktop";
// for test strDisplayText = currentItemID;
var LOGICAL_ID = currentItemID;
// var LOGICAL_ID = GetAttributeFromItemTable(itemTable, "LOGICAL_ID");
// var LOGICAL_ID = itemTable.getAttribute("LOGICAL_ID");
var strAction = "javascript:var x = new ActiveXObject('WScript.Shell');x.run('ping -t" + LOGICAL_ID + "');window.refresh";
var strAction1 = "http://" + LOGICAL_ID;
var strAction2 = "telnet://" + LOGICAL_ID;
var strAction3 = "telnet://" + LOGICAL_ID + "/? -ssh";
var strAction4 = "javascript:var x = new ActiveXObject('WScript.Shell');x.run('mstsc /v " + LOGICAL_ID + " /admin');window.refresh";
var strImagePath = "";
// Add menu item
CAMOpt(m, strDisplayText, strAction, strImagePath);
// add a separator to the menu
CAMSep(m);
CAMOpt(m, strDisplayText1, strAction1, strImagePath);
CAMOpt(m, strDisplayText2, strAction2, strImagePath);
CAMOpt(m, strDisplayText3, strAction3, strImagePath);
CAMOpt(m, strDisplayText4, strAction4, strImagePath);
// false means that the standard menu items should also be rendered
return true;
// END: Override function
</script>Hi,
If you want to disable the Rich Text Field dynamically, you can consider to use JavaScript and JavaScript Client Object Model.
The “disable” attribute seems not work on Rich Text Editor control, so we can set the “display” attribute as “none” to hide the control instead:
<script type="text/javascript">
document.getElementById("ctl00_PlaceHolderMain_rftDefaultValue").style.display = "none";
document.getElementById("ctl00_PlaceHolderMain_rftDefaultValue_toolbar").style.display = "none";
document.getElementById("ctl00_PlaceHolderMain_rftDefaultValue_iframe").style.display = "none";
console.log('hide');
</script>
You will need to find out the id of the toolbar and textbox of the Rich Text Editor control in page using IE developer(F12) first, then replace the ids in the script above.
We can get values of list items using JavaScript Client Object Model:
http://msdn.microsoft.com/en-us/library/office/hh185006(v=office.14).aspx
More information about JavaScript Client Object Model:
http://msdn.microsoft.com/en-us/library/office/hh185011(v=office.14).aspx
http://msdn.microsoft.com/en-us/library/office/hh185015(v=office.14).aspx
Feel free to reply if there are still any questions.
Thanks
Patrick Liang
Forum Support
Please remember to mark the replies as answers if they
help and unmark them if they provide no help. If you have feedback for TechNet
Subscriber Support, contact [email protected]
Patrick Liang
TechNet Community Support -
I am using Photoshop CS5 on a new iMac with a wireless keyboard. I used to be able to hit F11 to perform a custom sharpening action but now the F11 key is the volume control key and I have tried everything to disable or switch the volume key. I have also tried assigning other function keys to initiate the action. Is there a simple solution to this? What am I missing?
Try unmounting the volume on your iMac using Disk Utility. Then mount it again. You may need to reboot the laptop or relaunch its Finder process (using the Force Quit window) after remounting the drive on your iMac. Remember that no process may be accessing any files on the drive you plan to unmount, or the unmount will fail. Unmounting and remounting an external drive on my iMac made it become visible on my MacBook Pro after it had disappeared.
-
Where is the custom stamp location in Acrobat 9 Pro for Win Vista
Where is the custom stamp location in Acrobat 9 Pro for Win Vista?
See this thread to find out how to determine the location:
http://acrobatusers.com/forums/aucbb/viewtopic.php?id=17521 -
Where can I find the Action Panel in Photoshop?
Where can I find the Action Panel in Photoshop?
Are you using photoshop or photoshop elements and which version?
(in photoshop it should be under Window>Actions or Window>Show Actions)
(only photoshop elements 11 has Window>Actions)
(no other version of photoshop elements has Window>Actions)
What operating system? -
Custom dynamic action not firing
Using Apex 4.2.2 on 11g
I have a standard report A1
There is a column link on report A1 which refreshes chart C1 using a custom dynamic action.
The column link on report A1 has the URL set to javascript:$.event.trigger('RefreshTrend_2', [{key_2:'#COL01#' }]);
and there is a dynamic action D1 RefreshTrend_2 which sets the value of the chart filter P17_KEY_2 to the value of the javascript variable key_2 and then refreshes chart C1
The dynamic action is custom with a type DOMObject of document and no condition
This works fine but when I add another report/chart (report A2, chart C2) combination with a similar dynamic action (D2), D2 is a copy of D1 with the values for the variables and chart region changed.
The A2/C2 functionality works fine on its own, D2 gets fired when I click the column link, but not when there are 2 dynamic actions of custom/document on the page.
This column link on A2 only fires the dynamic action D2 if dynamic action D2 has a higher sequence than D1 (if i move it above D1 in the list it will fire, but then D1 does not fire for the column link on A1
Am I missing something?
Thanks
KathrynHere is my page source from the browser (i put in some blank lines here to separate the 3 dynamic actions)
<script type="text/javascript">
apex.da.initDaEventList = function(){
apex.da.gEventList = [
{"triggeringElement":"P17_IS_OK","triggeringElementType":"ITEM","triggeringConditionType":"NOT_NULL","bindType":"bind","bindEventType":"change",actionList:[{"eventResult":true,"executeOnPageInit":true,"stopExecutionOnError":true,"affectedElementsType":"BUTTON",javascriptFunction:apex.da.enable,"action":"NATIVE_ENABLE"},{"eventResult":false,"executeOnPageInit":true,"stopExecutionOnError":true,"affectedElementsType":"BUTTON",javascriptFunction:apex.da.disable,"action":"NATIVE_DISABLE"}]},
{"triggeringElement":"document","triggeringElementType":"DOM_OBJECT","bindType":"live","bindDelegateTo":document,"bindEventType":"RefreshTrend_2",actionList:[{"eventResult":true,"executeOnPageInit":true,"stopExecutionOnError":true,"waitForResult":true,"affectedElementsType":"ITEM","affectedElements":"P17_KEY_2",javascriptFunction:apex.da.setValue,"ajaxIdentifier":"3BB4667C9E25BFB8DCF63639507A062A88F713A193C0D30DDF1CEA8D6875A7F9","attribute01":"JAVASCRIPT_EXPRESSION","attribute05":"this.data.key_2","attribute09":"N","action":"NATIVE_SET_VALUE"},{"eventResult":true,"executeOnPageInit":true,"stopExecutionOnError":true,"affectedElementsType":"REGION","affectedRegionId":"R2959102626294614",javascriptFunction:apex.da.refresh,"action":"NATIVE_REFRESH"}]},
{"triggeringElement":"document","triggeringElementType":"DOM_OBJECT","bindType":"live","bindDelegateTo":document,"bindEventType":"RefreshTrend_1",actionList:[{"eventResult":true,"executeOnPageInit":true,"stopExecutionOnError":true,"waitForResult":true,"affectedElementsType":"ITEM","affectedElements":"P17_KEY_1",javascriptFunction:apex.da.setValue,"ajaxIdentifier":"51D6B9673F7096076392A95D9D00B417D49DEB96D878B419FC6D1E482D0AB2F0","attribute01":"JAVASCRIPT_EXPRESSION","attribute05":"this.data.key_1","attribute09":"N","action":"NATIVE_SET_VALUE"},{"eventResult":true,"executeOnPageInit":false,"stopExecutionOnError":true,"affectedElementsType":"REGION","affectedRegionId":"R2925517394066336",javascriptFunction:apex.da.refresh,"action":"NATIVE_REFRESH"}]}];
</script>
Only the first "document" dynamic action will fire, even though I fire them by name using
javascript:$.event.trigger('RefreshTrend_1', [{key_1:'#COL01#' }]); from the column link.
Kathryn
Maybe you are looking for
-
How to set Timezone in a date object
Hi, I need to write a method setTimeZone(Date d,TimeZone t) which should take a Java.util.Date and a Timezone object and set the time zone to the date object. for example... Date d=new Date(); TimeZone tz=TimeZone.getTimeZone("PST"); //should print t
-
With OSX 10.9.1 I can no longer receive updates through the App Store?
With OSX 10.9.1 I can no longer receive updates through the App Store?
-
I am using WIndows 7 64 bit, and the most recent version of Premiere Pro CC on an I7 machine with 8GB of memory. I have imported a HD .mov clip and placed it on the timeline. When I press 'Play', it shows in the Program Monitor window. When I stop
-
Problems working with linked files in illustrator
Hi everyone, i hope you can help me with this doubt that had given me problems since I started using illustrator. I'm using linked files in illustrator because i'm able to modify the files later, as I do in InDesign too, but in both cases I had have
-
I tried copying some content from various websites (open content from plian HTML pages) and tried to paste it in Quickoffice document as well as in mai application. all the text got pasted properly however the content had some graphics and pictures i