How obtain HttpServletRequest from the decode method of a component
in the ea3 imlementation there was a method:
HttpServletRequest request = (HttpServletRequest)context.getServletRequest();
the context.getServletRequest(); does not exist in the new implementation. Is there any way left to access the servlet request?
You found the right answer, but note that you'd have to cast the return value to HttpServletRequest in order to access any of the methods. Doing so would mean, for example, that your application will never be able to run in a portlet environment, where the underlying request object will be a PortletRequest instead.
Most of the interesting information from the request is available directly through calls on ExternalContext -- for example, you can get a Map of all the request parameters by calling getRequestParameterMap(). You should prefer such calls if they provide the information you need, and access the underlying request object directly only as a last resort.
Craig McClanahan
Similar Messages
-
How do you call a java class from the main method in another class?
Hi all,
How do you call a java class from the main() method in another class? Assuming the two class are in the same package.
Thanks
SI
Edited by: okun on May 16, 2010 8:40 PM
Edited by: okun on May 16, 2010 8:41 PM
Edited by: okun on May 16, 2010 8:47 PMgeorgemc wrote:
To answer your impending question, either the method you're calling has to be static, or you need an instance of that other class to invoke it against. Prefer the latterAnd to your impending question after that: no, don't use the Singleton pattern. -
How can I call the create method in BO from Application Service
Hello!
When I create a Business Object, CAF generates some methods automatically.
How can I call the create method in the BO from Application Service logic?
When i call the method then the entityManager and the sessionContext is NULL.
How can I initialize this?
Can anybody help me?
Thanks, ThomasIf you are using CE 7.11...
1) In the Application Services, add the BO as dependant object in dependencies tab.
2) In the implemention, add the following codes to call create method of the BO:
this.get<BO>.createMethod();
julius -
How to remove the recursion from the following method
Hi All,
Can u plz help me to remove the recursion from the following method.
The problem here is that recursion cann't be removed easily here as there is no any end condition.
hopefully waiting for the help....
Reema.
private FilterStatement processCustomExpressions(FilterStatement statement,
DistinguishedName tenant, LdapDao ldapDao)
throws NameNotFoundException,
LDAPServerException, NamingException {
HashMap relMap = new HashMap();
HashMap replaceMap = new HashMap();
Vector relVec = null;
FilterSubExpressions expressions = statement.getExpressions();
FilterPartIterator it = (FilterPartIterator)expressions.iterator();
while (it.hasNext()) {
FilterExpression e = (FilterExpression)it.next();
if (e instanceof CustomExpression) {
CustomExpression ce = (CustomExpression)e;
try {
FilterExpression fe = ce.createExpression();
if (fe instanceof RelationshipExpression) {
RelationshipExpression re = (RelationshipExpression)fe;
it.replace(re);
relVec = (Vector) relMap.get(re.name);
if(relVec == null) {
relVec = new Vector();
relVec.add(re);
}else {
relVec.add(re);
it.remove();
relMap.put(re.name, relVec);
} else if (fe instanceof SystemExpression) {
SystemExpression se = (SystemExpression)fe;
it.replace(se);
} catch (FilterEvaluationException fe) {
traceLogger.exception(Level.DEBUG_MIN, this,
"processCustomExpressions(" + statement.toString() + ")", fe);
SystemLog.getInstance().logError(this,
"processCustomExpressions(" + statement.toString() + ")", fe.getMessage());
replaceRelationshipExpressions(statement, tenant, ldapDao, relMap);
processContainerBasedExpressions(tenant, ldapDao, relMap, replaceMap);
FilterSubStatements statements = statement.getStatements();
FilterStatement temp = null;
if (statements.size() != 0) {
FilterPartIterator iter = (FilterPartIterator)statements.iterator();
while (iter.hasNext()) {
temp = (FilterStatement)iter.next();
temp = processCustomExpressions(temp, tenant, ldapDao);
iter.replace(temp);
if(!replaceMap.isEmpty())
return replaceContainerBasedExpressions(statement, replaceMap);
return statement;
}I think one of the reasons that noone will reply to your posting is that you take it a bit too easy. First of all, please use the "code" button to format your code listings. Then it will look like this (see below) and everybody can at least read it!
private FilterStatement processCustomExpressions(FilterStatement statement,
DistinguishedName tenant,
LdapDao ldapDao)
throws NameNotFoundException, LDAPServerException, NamingException {
HashMap relMap = new HashMap();
HashMap replaceMap = new HashMap();
Vector relVec = null;
FilterSubExpressions expressions = statement.getExpressions();
FilterPartIterator it = (FilterPartIterator) expressions.iterator();
while (it.hasNext()) {
FilterExpression e = (FilterExpression) it.next();
if (e instanceof CustomExpression) {
CustomExpression ce = (CustomExpression) e;
try {
FilterExpression fe = ce.createExpression();
if (fe instanceof RelationshipExpression) {
RelationshipExpression re = (RelationshipExpression) fe;
it.replace(re);
relVec = (Vector) relMap.get(re.name);
if (relVec == null) {
relVec = new Vector();
relVec.add(re);
else {
relVec.add(re);
it.remove();
relMap.put(re.name, relVec);
else if (fe instanceof SystemExpression) {
SystemExpression se = (SystemExpression) fe;
it.replace(se);
catch (FilterEvaluationException fe) {
traceLogger.exception(Level.DEBUG_MIN, this,
"processCustomExpressions("
+ statement.toString()
+ ")",
fe);
SystemLog.getInstance().logError(this,
"processCustomExpressions("
+ statement.toString()
+ ")",
fe.getMessage());
replaceRelationshipExpressions(statement, tenant, ldapDao, relMap);
processContainerBasedExpressions(tenant, ldapDao, relMap, replaceMap);
FilterSubStatements statements = statement.getStatements();
FilterStatement temp = null;
if (statements.size() != 0) {
FilterPartIterator iter = (FilterPartIterator) statements.iterator();
while (iter.hasNext()) {
temp = (FilterStatement) iter.next();
temp = processCustomExpressions(temp, tenant, ldapDao);
iter.replace(temp);
if (!replaceMap.isEmpty())
return replaceContainerBasedExpressions(statement, replaceMap);
return statement;
}Second, when you cannot understand your own code anymore, simplify it! As far as I can see, there are two "main" processes (i.e. loops) in your method, where the second one calls the method recursively. Split the method into two. Furthermore, write a third method that processes the iterated elements and call that method from out of the loops.
I did'nt analyse your method and have no idea what it does at all. I'm merely telling my first impression.
Good luck. -
Sending files from the remote method
hi,
I would like to know if we can send a File object, i.e. a file as the return value from the remote method on the server side accessed by the client.
Actually, i want to make the files stored at the server system accessible to the client system. how to achieve it?java.io.File implements java.io.Serializable so the previous answer is formally incorrect. However you need to be aware that that would only send the File object, which is essentially the filename, not its contents. I'm sure that what the poster meant to say.
You can send the contents as well in a number of ways but you have to write it by hand. There's no easy way out of the box. -
How to record from the video in or S-video Ports on Qosmio G40?
Can anyone tell me how to record from the video in or S-video ports, because i've tried the Ulead DVD factory program and the only capture device it could see was the webcam, and it did capture from it
After that i've downloaded the update file that was provided by the support website
The devices that the program could see are the TV tuner and the webcam (which it couldn't access anymore for some reason)
After that i've downloaded a newer update which simply is the same as the last update and seems that someone in the support website directed the link of the new update which they don't have to the file of the previous update which doesn't really do anything.Hi
There are 2 s-video ports; s-video out port is not designed to capture the signals from any external source. The name of this port says everything; its an OUT port!
The s-video-in port must be placed at the right side of the notebook. Dont mix the both ports. But note; this port receives only the video signals. To hear the sounds, use a video cable to connect the sound terminals of the audio device and your computer.
Red: sound right channel
White: sound left channel
The Ulead DVD Movie factory can be used to capture this signal. -
How to query from the xml table a single, specified element.
I'm quite new in Xml Db. Pleas, can anybody tell me how to query from the xml table below a single element (i.e. the element 'rapportoparentela = NIPOTE' related to the element 'codicefiscale = CRRVNC76R52G337R', or the element 'rapportoparentela = FIGLIO' related to the element 'codicefiscale = CRRRNT51L23G337Q')?
- <dati xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<codiceinterno />
<codicefiscaleassistito>CRRMNL81R31G337H</codicefiscaleassistito>
- <famigliare>
<codicefiscale>CRRVNC76R52G337R</codicefiscale>
<rapportoparentela>NIPOTE</rapportoparentela>
</famigliare>
- <famigliare>
<codicefiscale>CRRRNT51L23G337Q</codicefiscale>
<rapportoparentela>FIGLIO</rapportoparentela>
</famigliare>
- <famigliare>
<codicefiscale>CBRPRN15S65E080W</codicefiscale>
<rapportoparentela>I.S.</rapportoparentela>
</famigliare>
- <famigliare>
<codicefiscale>CRRMNL81R31G337H</codicefiscale>
<rapportoparentela>NIPOTE</rapportoparentela>
</famigliare>
- <famigliare>
<codicefiscale>BCCCML54C50I845G</codicefiscale>
<rapportoparentela>NUORA</rapportoparentela>
</famigliare>
</dati>
Using SELECT extractValue(value(t),'/rapportoparentela') into result FROM NF_XMLT X,
TABLE ( xmlsequence (extract(value(X),'/dati/famigliare/rapportoparentela'))) t
I get all the elements 'rapportoparentela' and I want to get only one specified.
Regards.
PieroPiero,
you can add the condition "CRRVNC76R52G337R" to your xpath-expression like:
SELECT extractValue(value(t),'/rapportoparentela')
FROM NF_XMLT x
,TABLE ( xmlsequence (extract(value(X),'/dati/famigliare[rapportoparentela="CRRVNC76R52G337R"]'))) tto select only those famigliare-elements that have a child-element rapportoparentela with value "CRRVNC76R52G337R".
When you stored your XML in an XMLType column in the table, i think the following queries are better:
SELECT extractValue(x.your_XMLType_column,'/dati/famigliare/rapportoparentela')
FROM NF_XMLT x
WHERE extractValue(x.your_XMLType_column,'/dati/famigliare/codicefiscale')
= 'CRRVNC76R52G337R'or
SELECT extractValue(x.your_XMLType_column,'/dati/famigliare/rapportoparentela')
FROM NF_XMLT x
WHERE existsNode(x.your_XMLType_column,'/dati/famigliare[codicefiscale="CRRVNC76R52G337R"]')
!= 0 -
JSF 2 composite comp. backing class: what can I use for the decode method?
Hello, everybody!
I want to convert a JSF 1.2 custom component to a JSF 2.0 composite component. This JSF 1.2 custom component uses a renderer where I take some actions in the decode method. So, I would like to know what I could use to replace the well known decode method when writing a backing class for a JSF 2.0 composite component.
Thank you.
Marcos
Edited by: Marcos_AntonioPS on May 21, 2010 11:59 AMLet's try with org.havi.ui.HStaticText
-
am a brand new mac user...trying to figure out how to switch from the Mac Pro screen to my external monitor. Appreciate any help. thanks
In Finder... goto Help... In the Search Window type in Displays...
Lots of Useful Information there...
You may find these Links Useful too:
http://www.apple.com/support/mac101/
http://www.apple.com/support/macbookpro/
Cheers, -
How to exit from the button test in diagnostic mode
Hi,
I am having some trouble with my ipod 7th gen.
First my lightning cable wont be recognize. show the error Accesory incompatible.
I try to solve the problem cleaning the golden pins in the cable and in the ipod. Don't work
I enter in diagnostic mode in my ipod and I get stucked in the button counter test..
In the screen appear a mesage 'Please reset the unit to end'. I don't know how to reset the unit
I press any button and only increase the counter for every button.
First how acan exit from the button counter test and how can fix the issue with the lightning cableYour problem is that you are trapped inside an event case. It is not a good idea to run extended code inside event cases, else the event structure cannot service other events.
Why don't you use the outer loop for everything? Now things don't step on each others toes. What good is an event structure if it cannot react at all times???
Message Edited by altenbach on 07-25-2008 12:26 AM
LabVIEW Champion . Do more with less code and in less time .
Attachments:
event_problemMOD.vi 17 KB -
How to upgrade from the current Photoshop Photography Program to the full Creative Cloud student?!
In the account section it just gives me a full version (the one for 65€)Start here https://creative.adobe.com/join/edu
One Year Intro Price http://forums.adobe.com/thread/1448933?tstart=0
http://www.adobe.com/products/creativecloud/students.edu.html
http://www.adobe.com/products/creativecloud/buying-guide-education.html
http://www.adobe.com/education/students/student-eligibility-guide.edu.html
ID Proof http://www.adobe.com/store/au_edu/academic_id.html -
How can I change the payment method to None with gift card balance.
How can I change the payment method to None with gift card balance?
I already have an Apple ID account with no credit card but when I try to log in download free app it says Apple ID has not been used in iTunes store please review your account and it appears the billing info and there's no none in the option..how can I solve this so that I can used my Apple ID and can download free apps?Hi ..
Help here > Why can’t I select None when I edit my payment information?HHi -
HOW TO DISCONNECT FROM THE INTERNET WHEN TRAVELING INTERNATIONAL
HELLO EVERY ONE.I RECENTLY TRAVELED TO CANADA,WHEN I RETURNED BACK HOME I RECIEVED AN $1800 CELL PHONE BILL,$1000 OF THE BILL WAS INTERNET USAGE,I ADD AN INTERNATIONAL FEATURE BEFORE I LEFT BUT IT WAS LIMITED (HOW DO YOU CHECK HOW MUCH USAGE YOU HAVE USED WHILE BROWSING).SO I ASKED AT&T/A GUY IN THE APPLE STORE,BUT NO ONE REALLY KNOW HOW TO DISCONNECT FROM THE INTERNET AFTER USING IT,WHEN TRAVELING INTERNATIONAL.(MY TREO HAD AN OPTION THAT ASKED DO YOU WANT TO DISCONNECT FROM THE INTERNET)(THE IPHONE DON'T)
If you have upgraded to version 1.1.1 or later there is a switch to disable cellular data while roaming. By default it is set to disable data. Settings/General/Network Data Roaming.
You can monitor cellular data usage in Settings/Usage. Reset it just before traveling. -
How do you set the text of a Hyperlink component in code
I am using Visual Web pack in NB 6.0. How do you set the text of a hyperlink component in code?
Please see screenshots at
http://coba.usf.edu/departments/isds/faculty/agrawal/projects/java/
I have a hyperlink in a grid panel. I am using
hyperlink1.setText("Hello"); in prerender(),
but the Hyperlink shows up with the text "Hyperlink", whereas I was expecting "Hello". However,
hyperlink1.setUrl("http://www.usf.edu"); works as expected.
I tried nesting a static text in the hyperlink as suggested in the Creator guide (ed 2, Google project). I deleted the "Hyperlink" text in the properties editor but then the page turned out blank.
Thanks
ManishHi Manish,
Great to know you were able to fix your issue. The following blog entry has the list of resources you would like to look at for future.
http://blogs.sun.com/NetBeansSupport/entry/useful_resources_for_visual_web
Thanks
K -
How do I use the find method to find multiple items in a single paragraph?
I am desigining a script to find any instances where ctrl+b and ctrl+i are applied to body text and then replace those character format overrides with Italic or Bold chartag. Here's what the script is supposed to do:
put the find method in a while loop that searches for character format overrides.
If a character format override is found, pass the text range returned by the find method and the CharPropsChange flag to the GetTextForRange method.
Use a boolean compare between the idata of the text item to the character angle and character weight constants.
Whichever boolean evaluates to true, then use the SetTextProp method to set properties of the text range to the properties of the italic or bold character tag.
This script does work on the first character format override found however it ignores any other overrides in the same paragraph. The cause of this is that the while loop updates the text loc that the find method uses to the next paragraph in flow. I suspect that i need to add an inner loop that goes through all the text in a single paragraph, where at teach iteration the text loc used by the find method is based on the same paragraph but the offset is modified. I am just not sure how to do that.
function removeOverrides (pDoc)
var vDocStart = pDoc.MainFlowInDoc.FirstTextFrameInFlow.FirstPgf;
var vBoldFmt=getCharFmt (pDoc, 'Bold')
var vItalicFmt=getCharFmt (pDoc, 'Italic')
initFA_errno ();
while (FA_errno==Constants.FE_Success)
var vTextLoc = new TextLoc(vDocStart,0);
var vFindParams=findOverrideParams (pDoc);
var vTextRange=pDoc.Find(vTextLoc,vFindParams);
if (vTextRange.beg.obj.ObjectValid())
var vTextItems=pDoc.GetTextForRange (vTextRange, Constants.FTI_CharPropsChange)
if (vTextItems.length==!0 )
if (vTextItems[0].idata==Constants.FTF_WEIGHT)
pDoc.SetTextProps (vTextRange, vBoldFmt.GetProps())
if (vTextItems[0].idata==Constants.FTF_ANGLE)
pDoc.SetTextProps (vTextRange, vItalicFmt.GetProps())
} else (Log (vLogFileName, '\nERROR: No items were found in the text format array but format override was found: '+pDoc.Name))
vDocStart=vDocStart.NextPgfInFlow;
function findOverrideParams (pDoc)
var vFindParams = AllocatePropVals(1);
vFindParams[0].propIdent.num = Constants.FS_FindObject;
vFindParams[0].propVal.valType = Constants.FT_Integer;
vFindParams[0].propVal.ival = Constants.FV_FindCharacterFormatOverride;
return vFindParams;Hi Rick,
Well, following up on the previous posting, I actually did figure out how to make it work but it seems rather inefficient. I can insert a new paragraph right after the paragraph that has the table anchor but when i cut the table, i also cut the paragraph i just created. So to get around that, I create two paragraphs, so that there will be one paragraph left after i do the cut and that is the paragraph that I paste the table into. Once the table is pasted into the new paragraph, I delete the other paragraph that I created.
Here's the updated code from the for loop:
var vTbl = vDoc.GetUniqueObject(Constants.FO_Tbl, vTextItems[i].obj.Unique);
var vAnchorPgf=vDoc.NewSeriesPgf (vTbl.TextLoc.obj)
var vAnchorPgf2=vDoc.NewSeriesPgf (vAnchorPgf);
var vAnchorTextLoc=new TextLoc (vAnchorPgf2, 0);
var vTblTextRange=new TextRange ();
vTblTextRange.beg.obj=vTbl.TextLoc.obj;
vTblTextRange.beg.offset = vTbl.TextLoc.offset;
vTblTextRange.end.obj=vTbl.TextLoc.obj;
vTblTextRange.end.offset = Constants.FV_OBJ_END_OFFSET
vDoc.TextSelection=vTblTextRange;
vDoc.Cut (0);
vTblTextRange.beg.obj=vAnchorTextLoc.obj;
vTblTextRange.beg.offset = 0;
vTblTextRange.end.obj=vAnchorTextLoc.obj;
vTblTextRange.end.offset =0;
vDoc.TextSelection=vTblTextRange;
vDoc.Paste (0);
vAnchorPgf2.Delete();
Maybe you are looking for
-
My friend synced a video to my ipod but it earased all my data on my ipod,but I can't figure out how to load my old library back without deleting the movie. My friend shares a family account so she can't tell me the password. How can i get my old lib
-
Connecting my home stereo system to my macbook pro
I want to connect my stereo system to my MacBook Pro in order to put some of my Pops old vinyl onto CD to play when out and about. Please can someone advise best option. Usual stereo phono out from the amp. Thanks Nii Naku
-
First iView in the Role only transferred to SAP and next two ignored
Hi, I have three iViews in a Role and when I transfer only first view is been transferred to SAP backend (wp3r) whereas the next two iviews are ignored. Is it something I have to change the iview properties ? Any ideas ? I want to transfer all the th
-
Would it be too much to ask for Firefox to ignore the "www" when sorting history by site?
Like it says in the topic question. Would it be too much to ask for Firefox to ignore the "www" when sorting history by site? IE ignores the "www", but not Firefox. It's a real pain to have to look in two places rather than one for a site I previousl
-
Complex/Multi Query Template using template builder.
Hi Everyone! I'm learning BI Publisher & Template Builder for word-07. I have completed tutorials that are based on single query or single XML data. is there any tutorial that demonstrate working with multiple queries OR XML data sets. Best Regards.