URL POPUP
Hi there,
has everyone ever wondered why links in weblogs and forum posts often give a 403-error, which the author has difficulty to explain?
Well, here's the solution:
The URL popup's input field length is set to maxlength=100. The (typical) link to a document in the SDN library is 109 (like in https://www.sdn.sap.comhttp://www.sdn.sap.comhttp://www.sdn.sap.comhttp://www.sdn.sap.comhttp://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/library/uuid/d86cf1a4-0701-0010-409d-c568b1d2519e).
So, if you copy and paste such a link, the characters exceeding 100 are silently cut off (for the above link resulting in https://www.sdn.sap.comhttp://www.sdn.sap.comhttp://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/library/uuid/d86cf1a4-0701-0010-409d-c56). Latter gives a 403er.
Please SDNers, could you set maxlength to a reasonable value or omit it at all? Would help us a lot.
regards anton.
[Examples:
<a href="https://www.sdn.sap.comhttp://www.sdn.sap.comhttp://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/library/uuid/d86cf1a4-0701-0010-409d-c56">BAD</a>
<a href="https://www.sdn.sap.comhttp://www.sdn.sap.comhttp://www.sdn.sap.comhttp://www.sdn.sap.comhttp://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/library/uuid/d86cf1a4-0701-0010-409d-c568b1d2519e">GOOD</a>
Hi,
Did you report your findings to [email protected] yet?
Eddy
Similar Messages
-
How to create a popup-page?
I have inserted the following in the side attributes:
HTML-Header:
<script language="JavaScript" type="text/javascript">
function popup()
NF=window.open("f?p=&APP_ID.:202:&APP_SESSION.","Angebot drucken","Scrollbars=1,resizable=0,width=800,height=600");
NF.focus; }
</script>
HTML-Body:
onLoad="popup()"
Actually the popup-page is constantly reloading, but I do not understand why. Can someone help me and post a working popup-script?function popUp2 is defined in functions.js (standard HTML-DB File) as
// generic URL popup
function popUp(URL) {
day = new Date();
id = day.getTime();
eval("page" + id + " = window.open(URL, '" + id + "', 'toolbar=0,scrollbars=1,location=0,statusbar=0,menubar=0,resizable=1,width=600,height=600');");
function popUp2(URL,width,height) {
day = new Date();
id = day.getTime();
eval("page" + id + " = window.open(URL, '" + id + "', 'toolbar=0,scrollbars=1,location=0,statusbar=0,menubar=0,resizable=1,width='+width+',height='+height);");
regards
Axel -
Create popup - not an external window
Hi guys.
how can I create a popup with webdypro for java?
With createExternalWindow() (which is deprecated by the way, is there a new way to do that differently now? ) I can create a new window. but I just need a regular URL-popup.
regards miladMilad,
You can remove the window features. Check this code:-
IWDWindow popup = wdComponentAPI.getWindowManager().createModalWindow(<IWDWindowInfo>);
popup.removeWindowFeature(WDWindowFeature.ADDRESS_BAR);
popup.removeWindowFeature(WDWindowFeature.STATUS_BAR);
popup.removeWindowFeature(WDWindowFeature.MENU_BAR);
popup.removeWindowFeature(WDWindowFeature.TOOL_BAR);
Chintan -
Using Designer to get Document ID in Document Library
I am creating an approval workflow on a document library that auto starts on submitting a document.
What I want to do, besides sending the user a link to view the document, is to actually provide a link to the URL that is used to generated the popup with approval options. I do not need a popup. When you paste the URL popup in the address bar, you
get the page with the correct info.
Here's the URL:
http://.../_Layouts/listform.aspx?PageType=4&ListId={...}&ID=22
The number 22 is what I am trying to get.
In Designer, when i do a look up, I cannot seem to get the ID of the document in the list view.Hi Ogrehulk,
Is the URL the related document in the approval task?
Do you want to put the URL in the email when user gets the task notification?
If yes, we can get the ID of the related document in the Start Approval Process step.
Click Approval in the Start Approval Process step.
Click Change the behavior of a single task under Customization.
Navigate to the step Email task notification to Current Task:Assigned To in When a Task is Pending.
Click Current Task:Assigned To.
Best regards.
Thanks
Victoria Xia
TechNet Community Support -
Error in the standard htmlb.jar from EP6 SP9 (HTMLx)
I've successfully migrated my custom developed applications from EP5 SP5 to EP6 SP9. I've used the well known 3rd party
HTMLxframework for the DatePicker and Locale corrections only (I am a brazilian developer).
In the org.sapportals.htmlb.rendering there is a class named RenderUtil.
This class has two places with this specific code:
ResourceBundle r = ResourceBundle.getBundle("java.text.resources.LocaleElements", locale);
Which is very wrong as the "java.text.resources.LocaleElements" is available only until j2sdk 1.3. In the EP5 that runs under 1.3 there's no problem but EP6 uses j2sdk 1.4 and this packages has been relocated from the standard package to a "ext" (extension) package and been renamed as "sun.text.resources.LocaleElements".
So, as HTMLx uses this RenderUtil class, I had to decompile the original from the htmlb.jar using JAD and corrected the above line with the following new line or code:
ResourceBundle r = ResourceBundle.getBundle("sun.text.resources.LocaleElements", locale);
More than that, I had to change several places of the HTMLx's HxInputFieldRenderer to reflect the class name changes made to the CSSs of the EP6. In the new version SAP does not open a pop-up window for the DatePicker. Instead they chose to rewrite it as a dynamic layer. So the HTMLx code has to change to reflect that.
Here follows the workaround version of HxInputFieldRenderer.java (notice that some strings are not internationalized, I just copied and pasted the parts I needed, so it's not a definitive version, but will help you get a clue of what to do):
* HxInputFieldRenderer.java
* Copyright (C) 2003 Alan Hobbs
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
package org.open.sapportals.htmlx.rendering;
import javax.servlet.jsp.PageContext;
import org.open.sapportals.htmlx.HxField;
import org.open.sapportals.htmlx.HxInputField;
import org.open.sapportals.htmlx.HxLocaleUtil;
import com.sapportals.htmlb.Component;
import com.sapportals.htmlb.Form;
import com.sapportals.htmlb.InputField;
import com.sapportals.htmlb.enum.DataType;
import com.sapportals.htmlb.enum.InputFieldDesign;
import com.sapportals.htmlb.enum.ResourceType;
import com.sapportals.htmlb.rendering.DefaultInputFieldRenderer;
import com.sapportals.htmlb.rendering.IPageContext;
import com.sapportals.htmlb.type.AbstractDataType;
import com.sapportals.htmlb.type.DataDate;
import com.sapportals.htmlb.type.DataString;
import com.sapportals.htmlb.type.Date;
import com.sapportals.portal.prt.component.IPortalComponentRequest;
import com.sapportals.portal.prt.component.IPortalComponentResponse;
import com.sapportals.portal.prt.logger.ILogger;
import com.sapportals.portal.prt.runtime.PortalRuntime;
import com.sapportals.portal.prt.service.urlgenerator.IUrlGeneratorService;
import com.sapportals.portal.prt.service.urlgenerator.specialized.IPortalUrlGenerator;
import com.sapportals.portal.prt.service.urlgenerator.specialized.ISpecializedUrlGenerator;
* @author Alan.Hobbs
* To change the template for this generated type comment go to
* Window>Preferences>Java>Code Generation>Code and Comments
* Render the HxInputField.
* Version Date Author Description
* 0.1.0 1-Aug-2003 AHobbs Origional
* 0.1.0 4-Aug-2003 AHobbs Added resource bundle
* 0.1.1 6-Aug-2003 AHobbs Write hidden fields to store the locale
* 0.1.1 8-Aug-2003 AHobbs Don't show the date picker button if the field is disabled
* 0.1.2 10-Aug-2003 AHobbs Only generate the month and day name javascript once per form
* 1.1.0 1-Apr-2004 AHobbs Added render methods to allow a HTMLB InputField
* to be used instead of a HxInputField
* 1.1.0 6-Apr-2004 AHobbs Changed the names for the hidden fields to "_HTMLX_xxxxx"
* 1.1.0 20-Apr-2004 AHobbs Allow debug code to be written to the console with System.out.println()
* 1.3.0 4-May-2004 AHobbs Added PopUp rendering
public class HxInputFieldRenderer extends DefaultInputFieldRenderer {
protected ILogger m_logger = PortalRuntime.getLogger("htmlx");
private static boolean writingDebugToConsole;
public HxInputFieldRenderer() {
super();
public void render(Component component, IPageContext pc)
m_logger.info("Entry: HxInputFieldRenderer.render()");
if (!(component instanceof HxInputField)) {
m_logger.warning(
"HxInputFieldRenderer.render() component is not instanceof HxInputField " +
"(component.getClass().getName()='" + component.getClass().getName() + "')");
return;
HxInputField inf = (HxInputField)component;
DataType type = inf.getType();
if (writingDebugToConsole) {
System.out.println("Start rendering HxInputField (id='" + inf.getId() + "') ...");
m_logger.info(" id='" + inf.getId() + "'");
m_logger.info(inf.toString());
/* Only include for PDK version 5.0.5.0 and above - may not be required ???
// m_logger.info(" VersionInfo.getVersion()='" + VersionInfo.getVersion() + "'");
// if (VersionInfo.?????) {
// if (pc.isUsingSession() && !inf.isVisible() && inf.getParkInSession()) {
// String uniqueName = pc.getParamIdForComponent(inf);
// Object value = inf.getValue();
// String valueString = null;
// if (value != null) {
// if (value instanceof AbstractDataType) {
// AbstractDataType dataValue = (AbstractDataType)value;
// if (dataValue != null)
// if (dataValue.isValid())
// valueString = dataValue.toString(pc);
// else
// if (dataValue instanceof DataString)
// valueString = dataValue.toString(pc);
// else
// valueString = dataValue.getValueAsString();
// else {
// valueString = value.toString();
// else {
// valueString = "";
// pc.getParamList().put(uniqueName, valueString);
// return;
boolean showDateHelp = false;
if (DataType.DATE.equals(type)
&& inf.isShowHelp()
&& !inf.isDisabled()) {
showDateHelp = true;
boolean showPatternHint = false;
if (inf.isShowPatternHint()
&& (DataType.DATE.equals(type)
|| DataType.TIME.equals(type))
|| ((inf.getPatternHint() != null) && (inf.getPatternHint().length() > 0))) {
showPatternHint = true;
boolean showStatusMsg = false;
if (inf.isShowStatusMsg() && (inf.getStatusMsg() != null) && (inf.getStatusMsg().length() > 0)) {
showStatusMsg = true;
if (showDateHelp || showPatternHint || showStatusMsg) {
pc.write("<table cellspacing="0" cellpadding="0" border="0" id="");
pc.write(""><tr><td>");
String uniqueName = pc.getParamIdForComponent(inf);
if (inf.isVisible()) {
pc.write("<span id="");
pc.write(uniqueName);
pc.write("-r" class="urEdfHelpWhl">");
if (inf.isPassword())
pc.write("<input type="password" class="sapEdf");
else
pc.write("<input type="text" class="sapEdf");
if (inf.isInvalid())
pc.write("i");
if (inf.isRequired())
pc.write("Req");
else
pc.write("Txt");
if (inf.isDisabled())
pc.write("Dsbl");
else
pc.write("Enbl");
if (inf.getDesign() == InputFieldDesign.SMALL)
pc.write("Sml");
pc.write("" autocomplete="off");
int mySize = inf.getSize();
if (mySize > 0) {
pc.write("" size="");
pc.write(mySize);
int maxlength = inf.getMaxlength();
if (maxlength > 0) {
pc.write("" maxlength ="");
pc.write(maxlength);
java.lang.String value = inf.getWidth();
if (value != null && !"".equals(value)) {
pc.write("" style="width:");
pc.write(value);
pc.write(";");
java.lang.String tooltip = inf.getTooltip();
if (tooltip != null) {
pc.write("" title="");
pc.writeEncoded(tooltip);
pc.write(" onchange="return htmlbDoEvent(this,'TV','onchange','0','");
pc.write(uniqueName);
pc.write("',1,1,'',0);" ");
pc.write(" onblur="return htmlbDoEvent(this,'TV','onblur','0','");
pc.write(uniqueName);
pc.write("',1,1,'',0);" ");
if(inf.isDisabled())
pc.write("" readonly="");
else {
pc.write("<input type="hidden");
pc.write("" name="");
pc.write(uniqueName);
if (inf.isLabeled()) {
pc.write("" id="");
pc.write(uniqueName);
Object value = inf.getValue();
pc.write("" value="");
if (value != null) {
String valueString = null;
if (value instanceof AbstractDataType) {
m_logger.info("-- Abstract Data Type");
AbstractDataType dataValue = (AbstractDataType)value;
if (dataValue != null) {
m_logger.info("-- dataValue != null");
if (dataValue.isValid()) {
m_logger.info("-- dataValue.isValid()");
if (dataValue instanceof DataDate) {
m_logger.info("-- dataValue instanceof DataDate");
Date date = ((DataDate)dataValue).getValue();
valueString = HxLocaleUtil.formatDate(date, pc.getLocale());
else {
m_logger.info("-- NOT dataValue instanceof DataDate");
valueString = dataValue.toString(pc);
else if (dataValue instanceof DataString) {
m_logger.info("-- dataValue instanceof DataString");
valueString = dataValue.toString(pc);
else {
m_logger.info("-- dataValue.getValueAsString()");
valueString = dataValue.getValueAsString();
else {
// Not Abstract Data Type
m_logger.info("-- Not Abstract Data Type");
valueString = value.toString();
pc.writeEncoded(valueString);
pc.write(""/>");
if (showDateHelp) {
String dateFormat = HxLocaleUtil.getSapDatePatternNumber(pc.getLocale());
pc.write("</td><td align='left'><button id='");
pc.write(uniqueName);
pc.write("-btn' type="button" tabindex="-1" ti="-1" class="urEdfHlpDate" onclick="htmlb_showDateHelp(event,'");
pc.write(uniqueName);
pc.write("','");
pc.write(dateFormat);
pc.write("','1')"></button>");
pc.write("<script>htmlb_addTexts('pt_BR',{SAPUR_OCTOBER:"Outubro",SAPUR_MSG_LOADING:"Processo de carga em andamento"," +
"SAPUR_SUNDAY_ABBREV:"Do",SAPUR_F4FIELD_TUTOR:"Pressionar F4 para exibir as entradas possíveis"," +
"SAPUR_INVALID:"Não válido",SAPUR_FEBRUARY:"Fevereiro",SAPUR_F4FIELD:"F4- campo de entrada"," +
"SAPUR_FRIDAY_ABBREV:"6ª",SAPUR_WEDNESDAY_ABBREV:"4ª",SAPUR_MAY:"Maio",SAPUR_MSG_WARNING:"Advertência"," +
"SAPUR_DECEMBER:"Dezembro",SAPUR_SEPARATOR:"-",SAPUR_MSG_SUCCESS:"Com êxito",SAPUR_SATURDAY_ABBREV:"Sa"," +
"SAPUR_THURSDAY_ABBREV:"5ª",SAPUR_MSG:"{0} {1} {2}",SAPUR_BUTTON_WHL:"{0} - {1} - {2} - {3}",SAPUR_JULY:"Julho"," +
"SAPUR_APRIL:"Abril",SAPUR_FIELD_TIME:"Hora",SAPUR_MSG_ERROR:"Erro",SAPUR_REQUIRED:"Necessário"," +
"SAPUR_BUTTON_WHL3:"{0} - {1} - {2}",SAPUR_SEPTEMBER:"Setembro",SAPUR_NOVEMBER:"Novembro",SAPUR_AUGUST:"Agosto"," +
"SAPUR_JANUARY:"Janeiro",SAPUR_BUTTON:"Botão",SAPUR_FIELD_PW:"Senha",SAPUR_FIELD:"Texto editável"," +
"SAPUR_DISABLED:"Não disponível",SAPUR_FIELD_DATE:"Data",SAPUR_MARCH:"Março",SAPUR_FIELD_NUMBER:"N°"," +
"SAPUR_MSG_STOP:"Stop",SAPUR_BUTTON_WHL4:"{0} - {1} - {2} - {3}"," +
"SAPUR_BUTTON_ENABLED:"Para ativar, utilizar a barra de espaço",SAPUR_TUESDAY_ABBREV:"3ª",SAPUR_READOLNY:""," +
"SAPUR_MSG_JUMPKEY:"Pressionar a barra de espaço para navegar para o campo correspondente",SAPUR_JUNE:"Junho"," +
"SAPUR_MONDAY_ABBREV:"2ª"});</script>");
if (showPatternHint) {
String pattern = "";
String patternTooltip = "";
if (DataType.DATE.equals(type)) {
pattern = HxLocaleUtil.getDatePatternInLocaleLanguage(pc.getLocale());
patternTooltip = HxLocaleUtil.formatHxMsg(pc.getLocale(), "HxInputField.DatePatternTooltip", pattern);
else if (DataType.TIME.equals(type)) {
pattern = HxLocaleUtil.getTimePatternInLocaleLanguage(pc.getLocale());
patternTooltip = HxLocaleUtil.formatHxMsg(pc.getLocale(), "HxInputField.TimePatternTooltip", pattern);
pattern = " " + pattern;
else if ((inf.getPatternHint() != null) && (inf.getPatternHint().length() > 0)) {
pattern = " " + inf.getPatternHint();
patternTooltip = HxLocaleUtil.formatHxMsg(pc.getLocale(), "HxInputField.PatternTooltip", pattern);
pc.write("</td><td align='left'>");
pc.write("<span class='sapTxtLeg' title='" + patternTooltip + "'><nobr>");
pc.write("<font color='666666' face='Microsoft Sans Serif' style='vertical-align:super' size='1'><b>" + pattern + "</b></font>");
pc.write("</nobr></span>");
if (showStatusMsg) {
if (inf.getStatusMsgPosition().equalsIgnoreCase("RIGHT")) {
pc.write("</td><td align='left'>");
pc.write("<font color='990000' face='Microsoft Sans Serif' size='1'>");
else if (inf.getStatusMsgPosition().equalsIgnoreCase("BELOW")) {
pc.write("</td></tr><tr>");
if (showDateHelp && showPatternHint) {
pc.write("<td align='left' colspan='3'>");
else if (showDateHelp ^ showPatternHint) { // '^' is Exclusive OR (XOR)
pc.write("<td align='left' colspan='2'>");
else {
pc.write("<td align='left'>");
pc.write("<font color='990000' face='Microsoft Sans Serif' style='verticle-align:super' size='1'>");
pc.write("<nobr>" + inf.getStatusMsg() + "</nobr>");
pc.write("</font>");
if (showDateHelp || showPatternHint || showStatusMsg) {
pc.write("</td></tr></table>");
// Generate code to store the current Locale in the HTML form,
// and make the month and day names available in javascript arrays.
// The form's Language attribute is used as a flag so that this is only
// done once for each form.
Form form = pc.getCurrentForm();
if ((form.getLanguage() == null)
|| (!form.getLanguage().equals(pc.getLocale().toString()))) {
// Save the locale in the html form as hidden fields so that the
// same locale can be used to parse returned data.
pc.write("<input type="hidden" name="_HTMLX_LANGUAGE_" value="" + pc.getLocale().getLanguage() + "">");
pc.write("<input type="hidden" name="_HTMLX_COUNTRY_" value="" + pc.getLocale().getCountry() + "">");
pc.write("<input type="hidden" name="_HTMLX_VARIANT_" value="" + pc.getLocale().getVariant() + "">");
// Write javascript arrays of month and day names in the locale language
StringBuffer sb = new StringBuffer(250);
String javaScriptPath = pc.getJavascriptPath();
sb.append("var javaScriptPath='");
sb.append(javaScriptPath);
sb.append("';");
java.lang.String dayNames[] = RenderUtil.getDayAbbreviations(pc.getLocale());
if (dayNames.length != 7) {
throw new IllegalStateException("Only locales with 7 days are supported!");
sb.append("var htmlbDayNames = new Array('");
for (int i = 0; i < 6; i++) {
sb.append(dayNames<i>);
sb.append("','");
sb.append(dayNames[6]);
sb.append("');n");
sb.append("var htmlbMonthNames = new Array('");
java.lang.String monthNames[] = RenderUtil.getMonthNames(pc.getLocale());
for (int i = 0; i < 11; i++) {
sb.append(monthNames<i>);
sb.append("','");
sb.append(monthNames[11]);
sb.append("');n");
java.lang.String jscript = sb.toString();
pc.getDocument().getIncludes().addBodyEndResource(ResourceType.DIRECTJSCRIPT, "HTMLB_INPUTFIELD_DATEHELP", jscript);
// Set the language in the form so we don't do this again
form.setLanguage(pc.getLocale().toString());
if (writingDebugToConsole) {
System.out.println("Finished rendering HxInputField (id='" + inf.getId() + "')");
m_logger.info("Exit: HxInputFieldRenderer.render()");
// Methods to allow the Standard HTMLB InputField to Mimic HxInputField
// The key idea here is to use the standard InputField ONLY as a String
// field (never Date) so that we have total control over the display format
// and then HTMLX looks after ofrmating the string, abd displaying the
// help icons, status messages etc.
* Render the HTML placed before a HTMLB InputField, an InputField,
* and the code placed after the InputFIeld, so that it behaves like a
* HTMLX HxInputField
* @param field
* @param pc
public static InputField mimicRender(HxField hxField, IPageContext pc) {
HxInputField hxInputField = new HxInputField(hxField, pc.getLocale());
return mimicRender(hxInputField, pc);
* Render the HTML placed before a HTMLB InputField, an InputField,
* and the code placed after the InputFIeld, so that it behaves like a
* HTMLX HxInputField
* @param field
* @param pc
public static InputField mimicRender(HxInputField hxInputField, IPageContext pc) {
// Render stuff before InputField
renderBeforeInputTag(hxInputField, pc);
// Render InputField
InputField inputField = new InputField(hxInputField.getId());
setUpInputField(hxInputField, inputField, pc);
// This is a kludge to make a field read only. It is achieved by
// adding the flag to the 'width' attribute. HTMLB then unknowingly
// adds the flag when it renders the 'width' attribute.
if (hxInputField.isReadOnly()) {
inputField.setWidth( inputField.getWidth() + ";" readonly="");
inputField.render(pc);
String uniqueName = pc.getParamIdForComponent(inputField);
String popUpKeyUniqueName = "";
// If the field has a Pop Up add a hidden field for the Key populated by the Pop Up
if (hxInputField.isShowPopUp()) {
InputField keyInputField = new InputField(hxInputField.getId() + "PopUpKey");
keyInputField.setVisible(false);
keyInputField.setValue(hxInputField.getPopUpKeyValue());
keyInputField.render(pc);
popUpKeyUniqueName = pc.getParamIdForComponent(keyInputField);
// Render stuff after InputField
renderAfterInputTag(hxInputField, pc, uniqueName, popUpKeyUniqueName);
return inputField;
* Render the HTML to be placed before a HTMLB InputField so that it
* behaves like a HTMLX HxInputField
* @param field
* @param pc
public static void renderBeforeInputTag(HxField field, IPageContext pc) {
renderBeforeInputTag(new HxInputField(field), pc);
* Render the HTML to be placed before a HTMLB InputField so that it
* behaves like a HTMLX HxInputField
* @param inf
* @param pc
public static void renderBeforeInputTag(HxInputField inf, IPageContext pc)
if (writingDebugToConsole) {
System.out.println("Start rendering mimic HxInputField (id='" + inf.getId() + "') ...");
if (showDateHelp(inf) || showPopUp(inf) || showPatternHint(inf) || showStatusMsg(inf)) {
pc.write("<table cellspacing="0" cellpadding="0" border="0" id="");
pc.write(""><tr><td>");
* Set a HMTLB InputField with the values stored in the HxField.
* This makes for less code in the JSP, and some versions of the PDK/EP
* do not support some paramters in the TAG (e.g. Tooltip)
* @param hxField
* @param myContext
* @param pageContext
public static InputField setUpInputField(HxField hxField, IPageContext pc, PageContext pageContext) {
Component component = (Component)pageContext.getAttribute(hxField.getId());
if (!(component instanceof InputField)) {
String msg =
"HxInputFieldRenderer.setUpInputTag() component is not instanceof InputField " +
"(hxField.getId()='" + hxField.getId() + "' " +
" component.getClass().getName()='" + component.getClass().getName() + "')";
PortalRuntime.getLogger("htmlx").severe(msg);
throw new IllegalArgumentException(msg);
InputField inf = (InputField)pageContext.getAttribute(hxField.getId());
setUpInputField(hxField, inf, pc);
return inf;
* Set a HMTLB InputField with the values in the HxField.
* This makes for less code in the JSP, and some versions of the PDK/EP
* do not allow you to set some paramters in the TAG (e.g. Tooltip)
* @param hxField
* @param myContext
* @param pageContext
public static void setUpInputField(HxField hxField, InputField inf, IPageContext pc) {
inf.setDisabled(hxField.isDisabled());
inf.setInvalid(hxField.isInvalid());
inf.setMaxlength(hxField.getMaxLength());
inf.setRequired(hxField.isRequired());
inf.setShowHelp(false);
inf.setTooltip(hxField.getTooltip());
inf.setType(DataType.STRING);
inf.setValue(hxField.getValueAsString(pc.getLocale()));
inf.setVisible(hxField.isVisible());
inf.setSize(hxField.getMaxLength());
* Set a HMTLB InputField with the values stored in the HxField.
* This makes for less code in the JSP, and some versions of the PDK/EP
* do not support some paramters in the TAG (e.g. Tooltip)
* @param hxField
* @param myContext
* @param pageContext
public static void setUpInputField(HxInputField hxInputField, InputField inf, IPageContext pc) {
inf.setDisabled(hxInputField.isDisabled());
inf.setInvalid(hxInputField.isInvalid());
inf.setMaxlength(hxInputField.getMaxlength());
inf.setRequired(hxInputField.isRequired());
inf.setShowHelp(false);
inf.setTooltip(hxInputField.getTooltip());
inf.setType(DataType.STRING);
inf.setValue(hxInputField.getPreformattedValueAsString());
inf.setVisible(hxInputField.isVisible());
inf.setSize(hxInputField.getSize());
* Render the HTML to be placed after a HTMLB InputField so that it
* behaves like a HTMLX HxInputField
* @param field
* @param myContext
* @param pageContext
public static void renderAfterInputTag(HxField field, IPageContext pc, PageContext pageContext) {
renderAfterInputTag(new HxInputField(field), pc, pageContext);
* Render the HTML to be placed after a HTMLB InputField so that it
* behaves like a HTMLX HxInputField
* @param inf
* @param myContext
* @param pageContext
public static void renderAfterInputTag(HxInputField inf, IPageContext pc, PageContext pageContext) {
Component component = (Component)pageContext.getAttribute(inf.getId());
String uniqueName = pc.getParamIdForComponent(component);
String popUpKeyUniqueName = "";
if (inf.isShowPopUp()) {
component = (Component)pageContext.getAttribute(inf.getId() + "PopUpKey");
popUpKeyUniqueName = pc.getParamIdForComponent(component);
renderAfterInputTag(inf, pc, uniqueName, popUpKeyUniqueName);
* Render the HTML to be placed after a HTMLB InputField so that it
* behaves like a HTMLX HxInputField
* @param inf
* @param pc
* @param uniqueName
* @param popUpKeyUniqueName
public static void renderAfterInputTag(
HxInputField inf,
IPageContext pc,
String uniqueName,
String popUpKeyUniqueName)
if (showDateHelp(inf)) {
String dateFormat = HxLocaleUtil.getSapDatePatternNumber(pc.getLocale());
pc.write("</td><td align='left'><button id='");
pc.write(uniqueName);
pc.write("-btn' type="button" tabindex="-1" ti="-1" class="urEdfHlpDate" onclick="htmlb_showDateHelp(event,'");
pc.write(uniqueName);
pc.write("','");
pc.write(dateFormat);
pc.write("','1')"></button>");
pc.write("<script>htmlb_addTexts('pt_BR',{SAPUR_OCTOBER:"Outubro",SAPUR_MSG_LOADING:"Processo de carga em andamento"," +
"SAPUR_SUNDAY_ABBREV:"Do",SAPUR_F4FIELD_TUTOR:"Pressionar F4 para exibir as entradas possíveis"," +
"SAPUR_INVALID:"Não válido",SAPUR_FEBRUARY:"Fevereiro",SAPUR_F4FIELD:"F4- campo de entrada"," +
"SAPUR_FRIDAY_ABBREV:"6ª",SAPUR_WEDNESDAY_ABBREV:"4ª",SAPUR_MAY:"Maio",SAPUR_MSG_WARNING:"Advertência"," +
"SAPUR_DECEMBER:"Dezembro",SAPUR_SEPARATOR:"-",SAPUR_MSG_SUCCESS:"Com êxito",SAPUR_SATURDAY_ABBREV:"Sa"," +
"SAPUR_THURSDAY_ABBREV:"5ª",SAPUR_MSG:"{0} {1} {2}",SAPUR_BUTTON_WHL:"{0} - {1} - {2} - {3}",SAPUR_JULY:"Julho"," +
"SAPUR_APRIL:"Abril",SAPUR_FIELD_TIME:"Hora",SAPUR_MSG_ERROR:"Erro",SAPUR_REQUIRED:"Necessário"," +
"SAPUR_BUTTON_WHL3:"{0} - {1} - {2}",SAPUR_SEPTEMBER:"Setembro",SAPUR_NOVEMBER:"Novembro",SAPUR_AUGUST:"Agosto"," +
"SAPUR_JANUARY:"Janeiro",SAPUR_BUTTON:"Botão",SAPUR_FIELD_PW:"Senha",SAPUR_FIELD:"Texto editável"," +
"SAPUR_DISABLED:"Não disponível",SAPUR_FIELD_DATE:"Data",SAPUR_MARCH:"Março",SAPUR_FIELD_NUMBER:"N°"," +
"SAPUR_MSG_STOP:"Stop",SAPUR_BUTTON_WHL4:"{0} - {1} - {2} - {3}"," +
"SAPUR_BUTTON_ENABLED:"Para ativar, utilizar a barra de espaço",SAPUR_TUESDAY_ABBREV:"3ª",SAPUR_READOLNY:""," +
"SAPUR_MSG_JUMPKEY:"Pressionar a barra de espaço para navegar para o campo correspondente",SAPUR_JUNE:"Junho"," +
"SAPUR_MONDAY_ABBREV:"2ª"});</script>");
if (showPopUp(inf)) {
String dateFormat = HxLocaleUtil.getSapDatePatternNumber(pc.getLocale());
pc.write("</td><td align='left'><div class="urEdfHlpSml" onClick="");
pc.write("htmlxPopUp('");
pc.write(getPopUpUrl(pc, inf.getPopUpPage()));
pc.write("', '");
pc.write(uniqueName);
pc.write("', '");
pc.write(popUpKeyUniqueName);
pc.write("', ");
pc.write(inf.getPopUpWidth());
pc.write(", ");
pc.write(inf.getPopUpHeight());
pc.write(", '");
pc.write(inf.getPopUpAttributes());
pc.write("')">");
pc.write(" </div>");
if (showPatternHint(inf)) {
String pattern = "";
String patternTooltip = "";
if (DataType.DATE.equals(inf.getType())) {
pattern = HxLocaleUtil.getDatePatternInLocaleLanguage(pc.getLocale());
patternTooltip = HxLocaleUtil.formatHxMsg(pc.getLocale(), "HxInputField.DatePatternTooltip", pattern);
else if (DataType.TIME.equals(inf.getType())) {
pattern = HxLocaleUtil.getTimePatternInLocaleLanguage(pc.getLocale());
patternTooltip = HxLocaleUtil.formatHxMsg(pc.getLocale(), "HxInputField.TimePatternTooltip", pattern);
pattern = " " + pattern;
else if ((inf.getPatternHint() != null) && (inf.getPatternHint().length() > 0)) {
pattern = " " + inf.getPatternHint();
patternTooltip = HxLocaleUtil.formatHxMsg(pc.getLocale(), "HxInputField.PatternTooltip", pattern);
pc.write("</td><td align='left'>");
pc.write("<span class='sapTxtLeg' title='" + patternTooltip + "'><nobr>");
pc.write("<font color='666666' face='Microsoft Sans Serif' style='vertical-align:super' size='1'><b>" + pattern + "</b></font>");
pc.write("</nobr></span>");
if (showStatusMsg(inf)) {
if (inf.getStatusMsgPosition().equalsIgnoreCase("RIGHT")) {
pc.write("</td><td align='left'>");
pc.write("<font color='990000' face='Microsoft Sans Serif' size='1'>");
else if (inf.getStatusMsgPosition().equalsIgnoreCase("BELOW")) {
pc.write("</td></tr><tr>");
if (showDateHelp(inf) && showPatternHint(inf)) {
pc.write("<td align='left' colspan='3'>");
else if (showDateHelp(inf) ^ showPatternHint(inf)) { // '^' is Exclusive OR (XOR)
pc.write("<td align='left' colspan='2'>");
else {
pc.write("<td align='left'>");
pc.write("<font color='990000' face='Microsoft Sans Serif' style='verticle-align:super' size='1'>");
pc.write("<nobr>" + inf.getStatusMsg() + "</nobr>");
pc.write("</font>");
if (showDateHelp(inf) || showPopUp(inf) || showPatternHint(inf) || showStatusMsg(inf)) {
pc.write("</span></td></tr></table>");
// Generate code to store the current Locale in the HTML form,
// and make the month and day names available in javascript arrays.
// The form's Language attribute is used as a flag so that this is only
// done once for each form.
Form form = pc.getCurrentForm();
if ((form.getLanguage() == null)
|| (!form.getLanguage().equals(pc.getLocale().toString()))) {
// Save the locale in the html form as hidden fields so that the
// same locale can be used to parse returned data.
pc.write("<input type="hidden" name="_HTMLX_LANGUAGE_" value="" + pc.getLocale().getLanguage() + "">");
pc.write("<input type="hidden" name="_HTMLX_COUNTRY_" value="" + pc.getLocale().getCountry() + "">");
pc.write("<input type="hidden" name="_HTMLX_VARIANT_" value="" + pc.getLocale().getVariant() + "">");
// Write javascript arrays of month and day names in the locale language
StringBuffer sb = new StringBuffer(250);
String javaScriptPath = pc.getJavascriptPath();
sb.append("var javaScriptPath='");
sb.append(javaScriptPath);
sb.append("';");
java.lang.String dayNames[] = RenderUtil.getDayAbbreviations(pc.getLocale());
if (dayNames.length != 7) {
throw new IllegalStateException("Only locales with 7 days are supported!");
sb.append("var htmlbDayNames = new Array('");
for (int i = 0; i < 6; i++) {
sb.append(dayNames<i>);
sb.append("','");
sb.append(dayNames[6]);
sb.append("');n");
sb.append("var htmlbMonthNames = new Array('");
java.lang.String monthNames[] = RenderUtil.getMonthNames(pc.getLocale());
for (int i = 0; i < 11; i++) {
sb.append(monthNames<i>);
sb.append("','");
sb.append(monthNames[11]);
sb.append("');n");
String jscript = sb.toString();
pc.getDocument().getIncludes().addBodyEndResource(ResourceType.DIRECTJSCRIPT, "HTMLB_INPUTFIELD_DATEHELP", jscript);
pc.getDocument().getIncludes().addBodyEndResource(ResourceType.DIRECTJSCRIPT, "HTMLX", getHtmlxJavascript());
// Set the language in the form so we don't do this again
form.setLanguage(pc.getLocale().toString());
if (writingDebugToConsole) {
System.out.println("Finished rendering mimic HxInputField (id='" + inf.getId() + "')");
private static boolean showDateHelp(HxInputField inf) {
if (DataType.DATE.equals(inf.getType())
&& inf.isShowHelp()
&& !inf.isDisabled()) {
return true;
return false;
private static boolean showPopUp(HxInputField inf) {
if (!showDateHelp(inf)
&& !inf.isDisabled()
&& inf.isShowPopUp()) {
return true;
return false;
private static boolean showPatternHint(HxInputField inf) {
boolean isDateOrTime = DataType.DATE.equals(inf.getType()) || DataType.TIME.equals(inf.getType());
boolean patternHintSet = (inf.getPatternHint() != null) && (inf.getPatternHint().length() > 0);
if (inf.isShowPatternHint()
&& (isDateOrTime || patternHintSet)) {
return true;
return false;
private static boolean showStatusMsg(HxInputField inf) {
if (inf.isShowStatusMsg()
&& (inf.getStatusMsg() != null)
&& (inf.getStatusMsg().length() > 0)) {
return true;
return false;
private static String getPopUpUrl(IPageContext pc, String pageName) {
IPortalComponentRequest request = (IPortalComponentRequest)pc.getRequest();
IPortalComponentResponse response = (IPortalComponentResponse)pc.getResponse();
IPortalUrlGenerator portalGen = null;
IUrlGeneratorService urlGen = (IUrlGeneratorService)request.getService(IUrlGeneratorService.KEY);
ISpecializedUrlGenerator specUrlGen2 = urlGen.getSpecializedUrlGenerator(IPortalUrlGenerator.KEY);
if (specUrlGen2 instanceof IPortalUrlGenerator) {
portalGen = (IPortalUrlGenerator) specUrlGen2;
// Create the url to the iView
String url = "";
if (portalGen != null) {
// Create the parameters passed to SAP transaction for mesima
url = portalGen.generatePortalComponentUrl(request, pageName); // "htmlxJarMimicExample.default");
return url;
protected static String getHtmlxJavascript() {
return "n" +
" if(window.document.domain == window.location.hostname) { n" +
" document.domain = document.domain.substring(document.domain.indexOf('.')+1); n" +
" } n" +
" var popUpTextId; n" +
" var popUpKeyId; n" +
" var myPopUp; n" +
" function setTextField(text) { n" +
" field = document.getElementById(popUpTextId); n" +
" if (field) { n" +
" field.value = text; n" +
" } n" +
" else { n" +
" alert('Text target field for pop up not found (' + popUpTextId + ')'); n" +
" } n" +
" } n" +
" function setKeyField(key) { n" +
" field = document.getElementById(popUpKeyId); n" +
" if (field) { n" +
" field.value = key; n" +
" } n" +
" } n" +
" function setFields(text, key, close) { n" +
" setTextField(text); n" +
" setKeyField(key); n" +
" if (close) { n" +
" myPopUp.close(); n" +
" } n" +
" return false; n" +
" } n" +
" function htmlxPopUp(url, textId, keyId, width, height, attributes) { n" +
" popUpTextId = textId; n" +
" popUpKeyId = keyId; n" +
" if (myPopUp) { n" +
" myPopUp.close(); n" +
" } n" +
" if (event!=null){ n" +
" xPos = event.screenX-event.offsetX; n" +
" yPos = event.screenY-event.offsetY; n" +
" } n" +
" if ((xPos+width) > screen.availWidth) { n" +
" xPos=screen.availWidth - width - 10; n" +
" } n" +
" if ((yPos+height) > screen.availHeight) { n" +
" yPos=screen.availHeight - height - 10; n" +
" } n" +
" sizeAndPos = 'width=' + width + ', height=' + height + ', top=' + yPos + ', left=' + xPos; n" +
" myPopUp = window.open(url, 'PopUp', sizeAndPos + ', ' + attributes); n" +
" if (!myPopUp) { n" +
" alert('You may have unrequested popup blocking on.'); n" +
" } n" +
" }n";
// Methods to assist dubugging JSP pages
* @return True if debug messages are being written to the console
public static boolean isWritingDebugToConsole() {
return writingDebugToConsole;
* When an error occurs in a JSP page the line number given in the stack
* trace is rarely the line that caused the error. This can make traking
* down errors in a JSP page can be very difficult. By writing debug messages
* to the console every time a field is rendered, it can be much easier to
* identify the area of code causing a problem.<p>
* <b>Do NOT set this in the production release of your application.</b>
* @param b
public static void setWritingDebugToConsole(boolean b) {
writingDebugToConsole = b;
* Initialise to NOT write debug to the console
static {
writingDebugToConsole = false;Try these
[http://help.sap.com/saphelp_nwmobile71/helpdata/en/45/65ad4ee0531aa8e10000000a114a6b/content.htm]
[http://help.sap.com/saphelp_nw04/helpdata/en/6f/1bd5c6a85b11d6b28500508b5d5211/content.htm]
[http://infocenter.sybase.com/help/index.jsp?topic=/com.sybase.infocenter.dc01381.0120/doc/html/koh1278435126915.html]
Reagards,
Mouli -
How to start /open Jdeveloper?
Hi
I have just installed JDeveloper release 2 and I cannot start it up.
In earlier versions I have run the jdevw.exe in the jdev/bin directory.
I know this sounds dumb already , but can anyone help?
thanksPlease send us a copy of jdev.conf that you can find in <install_dir>\jdev\bin and also
send us a copy of your directory listing of the jdev installation, goto <install_dir> and type
dir /s > directory.txt and send us directory.txt.
Please send both files to [email protected] with the following
subject:
For Michel Trudeau
In the email, copy the following URL:
popup lov question
Thanks a lot for your investigation,
Michel -
Open application in new window and new session
The problem is if the application is already open and we try to open another application by clicking at the
shortcut, it opens it in a new browser but it does not prompt for the password.
We want the application to prompt for the password each and every time.
we use the following html to launch the application:
<HTML>
<HEAD>
<SCRIPT LANGUAGE="Javascript">
function OpenUrl(url)
PopUp = window.open(url, 'X', height=768,width=1024, LOCATION=no, MENUBAR=no, STATUS=no, TOOLBAR=no,SCROLLBARS=no, RESIZABLE=yes');
window.opener = null
window.close()
return false
win.focus();
</SCRIPT>
</HEAD>
<BODY OnLoad="OpenMyApp('http://.......................')">
</BODY>
</HTML>
I would really appreciate your help.
KumarThere are several ways to do this.
One way is to create your own custom login screen and send the user to it instead of the application. Once they login, then send them to the desired application.
You'll need two user accounts to do this. The first is to lauch the custom login screen, and the second is to launch your application. To avoid two database logins, write the code in your custom login screen to automatically log them into the second account.
Another way is to create a different user account for each application. You may need to work with your DBA to get the accounts created with the proper permissions so they access only the tables they need. -
I had the email infected -how do I get rid of it?
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
<script type="text/javascript">
var _gaq = _gaq || [];
_gaq.push(['_setAccount', 'UA-21595156-1']);
_gaq.push(['_trackPageview']);
(function() {
var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
})();/script>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
<!-- Mimic Internet Explorer 7 -->
<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7" />
<link rel="stylesheet" href="../js/dojotoolkit/dojo/resources/dojo.css?2-6.01_164849" type="text/css"/>
<link rel="stylesheet" href="../js/dojotoolkit/dijit/themes/dijit.css?2-6.01_164849" type="text/css"/>
<link rel="stylesheet" href="../js/dojotoolkit/dojox/grid/_grid/Grid.css?2-6.01_164849" type="text/css"/>
<link rel="stylesheet" href="../js/dojotoolkit/dojox/grid/resources/Grid.css?2-6.01_164849" type="text/css"/>
<link rel="stylesheet" href="../js/dojotoolkit/dojox/iconGrid/resources/DataIconGrid.css?2-6.01_164849" type="text/css"/>
<link rel="stylesheet" href="css/main.css?2-6.01_164849" type="text/css"/>
<link rel="stylesheet" href="css/Default.css?2-6.01_164849" type="text/css"/>
<link rel="stylesheet" href="css/dijit/Editor.css?2-6.01_164849" type="text/css"/>
<script type="text/javascript">
trace = function(txt){};
var djConfig = {
cacheBust: "2-6.01_164849",
templateForAutomation: false,
isDebug: location.href.indexOf('isDebug=true')!=-1, //to enable firebug lite, add 'isDebug=true' to the URL
popup:true,
//forceFirebugLite:true,
parseOnLoad: false,
defaultDuration: 1 // override dijit.defaultDuration for animation
(function() {
var getParameter = function(paramName) {
paramName += "="
var queryString = window.location.search;
var strBegin = queryString.indexOf(paramName);
if (strBegin==-1){
strBegin = queryString.length;
} else {
strBegin += paramName.length;
var strEnd = queryString.indexOf("&",strBegin);
if (strEnd==-1){
strEnd = queryString.length;
return queryString.substring(strBegin,strEnd);
var locale = getParameter("lang");
if (locale.length > 0){
djConfig.locale = locale.toLowerCase();
if ( locale.toLowerCase() != "en" )
djConfig.extraLocale = ["en"];
if (locale == "ar" || locale == "iw") {
djConfig.direction = document.getElementsByTagName("html")[0].dir = "rtl";
</script>
<script type="text/javascript" src="../js/dojotoolkit/dojo/dojo.js?2-6.01_164849"></script>
<script type="text/javascript">
dojo.require("dojo.date.locale");
dojo.require("dojo.parser");
dojo.require("dijit.ProgressBar");
dojo.registerModulePath("iwc", "../../iwc");
dojo.requireLocalization("iwc.i18n","resources");
iwc.l10n = dojo.i18n.getLocalization("iwc.i18n", "resources");
// To report progress for a loading operation:
// * first publish the update
// * then wrap the loading operation in a timeout
// This provides the browser an opportunity to update the bar before it starts the loading operation.
dojo.addOnLoad(function() {
dojo.publish('curtainProgressUpdate', [5, ['dojo_base']]);
setTimeout(function(){
dojo.require("dijit.layout.BorderContainer");
dojo.require("dijit.layout.ContentPane");
dojo.require("dijit.layout.StackContainer");
dojo.require("dijit.layout.TabContainer");
dojo.parser.parse(dojo.body());
dojo.publish('curtainProgressUpdate', [10, ['iwc_base']]);
setTimeout(function(){
dojo.require("iwc.kernel"); //defaultConfig extracts the secureToken value
dojo.publish('curtainProgressUpdate', [15, ['user_prefs']]);
setTimeout(function(){
dojo.require("iwc.bootstrap");
dojo.publish('curtainProgressUpdate', [20, ['theme']]);
setTimeout(function(){
iwcApp = new iwc.kernel();
document.title = iwc.l10n.login_product_name;
setTimeout(function(){
// we must load haver the kernel has loaded.
iwc.themes.loadSelectedItem();
// create and attach banner (require bootstrap + kernel ran)
try {
var banner = new iwc.widget.Banner();
//console.log("Created ", banner.domNode);
//console.log(dijit.byId("iwcBanner"));
dijit.byId("iwcBanner").domNode.appendChild(banner.domNode);
// create and attach quick navigation
dijit.byId("iwcLayoutNavigation").addChild(new iwc.widget.QuickActions({region: "top"}));
var oldHandler = window["onbeforeunload"] || function(){};
iwc.oldEventHandler["onbeforeunload"] = oldHandler;
// Setting a static/fixes height for Android Tablet
if((dojo.isAndroid && dojo.isTablet)){
var initialSize = dojo.marginBox(dojo.body());
dojo.style(dojo.body(), "height", initialSize.h + "px" );
var handlerOrientationChange = dojo.connect(window, "orientationchange", function(){
dojo.style(dojo.body(), "height", window.innerHeight + "px");
window.onbeforeunload = function(evt) {
var message = iwc.l10n.navigateAwayWarning;
var count = iwc.openFormManager.getCount();
if(iwc.session_invalid_redirect){
return;
if (count) {
message = dojo.string.substitute(iwc.l10n.navigateAwayWithOpenFormsWarning, {count: count});
if (typeof evt == 'undefined') { // IE
evt = window.event;
if (evt) {
evt.returnValue = message;
return message;
} catch (e) {}
},0);
},0);
},0);
},0);
},0);
dojo.addOnWindowUnload(function() {
iwcApp.destroy();
</script>
<!-- Help Popup -->
<script type="text/javascript">
function popup(mylink, windowname) {
if (! window.focus)return true;
var href;
if (typeof(mylink) == 'string')
href=mylink;
else
href=mylink.href;
window.open(href, windowname, 'menubar=no,width=620,height=560,toolbar=no,resizable=yes');
return false;
</script>
</head>
<body id="iwcID" class="IWC">
<div id="overlay">
<div class="centered">
<div class="logo"></div>
<div id="progressBar"></div>
<div id="progress"></div>
</div>
</div>
<div dojoType="dijit.layout.BorderContainer" id="iwcLayout" gutters="false" onmousedown="void(0)">
<div dojoType="dijit.layout.ContentPane" region="top" id="iwcBanner"></div>
<!--the bottom container-->
<div id="horizontalsplit" dojoType="dijit.layout.BorderContainer" region="center" liveSplitters="false" persist="true">
<!-- the leading container -->
<div id="iwcLayoutNavigation" dojoType="dijit.layout.BorderContainer" region="leading" splitter="true">
<div dojoType="dijit.layout.BorderContainer" region="center" persist="true">
<div id="iwcContainerLabelWrap" dojoType="dijit.layout.ContentPane" class="iwcContainerLabelWrap" region="top">
<div class="mail"> <!-- Containing div used to set the icon class, do not remove -->
<span class="serviceIcon dijitInline"></span>
<span id="iwcContainerLabel" class="serviceLabel dijitInline"></span>
</div>
</div>
<div id="iwcMenu" dojoType="dijit.layout.ContentPane" region="bottom" style="overflow: hidden"></div>
<div id="iwcNavigationContainer" dojoType="dijit.layout.StackContainer" region="center" class="IWC-NavigationContainer"></div>
</div>
</div>
<!-- the center container -->
<div id="iwcRightSplit" dojoType="dijit.layout.BorderContainer" region="center" liveSplitters="false" persist="true">
<div id="iwcViewContainer" dojoType="dijit.layout.StackContainer" region="center"></div>
<div id="iwcViewerTaskBar" dojoType="dijit.layout.StackContainer"
region="bottom" class="iwcViewerTaskBar dijitHidden">
</div>
</div>
</div>
</div>
<script type="text/javascript">
(function(){
dojo.byId("progress").innerHTML = iwc.l10n.main_loading;
var pb = new dijit.ProgressBar({}, "progressBar");
// arguments are the percentage left, and the list of services yet to load
var pbs = dojo.subscribe('curtainProgressUpdate', function(p, l) {
if (p != 100) {
//CONSole.log('updating progress: ', p, l, 'loading_'+l[l.length-1], iwc.l10n['loading_'+l[l.length-1]]);
dojo.byId("progress").innerHTML = iwc.l10n['loading_'+l[l.length-1]];
pb.update({progress: p});
else {
//console.log('destroying overlay');
pb.destroy();
dojo.unsubscribe(pbs);
var curtain = dojo.byId("overlay");
curtain.parentNode.removeChild(curtain);
iwc.api.setupIdleTimeoutCheck();
if (dojo.isSafari) {
//console.log('fixing layout for safari...');
dijit.byId('iwcLayout').resize();;
</script>
</body>
</html>I had to create another email address as this code generated spam messages. http://en.wikipedia.org/wiki/Backscatter_(email)
There was no bug in my computer or folders. Compacting the folders did not solve the issues while creating another email account did. -
[XHTML] sacar marco de un object
Como consigo sacar el marco gris de un object en IE (que
funciona como un
iframe)?Por si no queda claro, aqui pongo el codigo (para quien lo
necesite).
<script type="text/javascript">
function pop(a,w,h)
url = a.getAttribute("href");
window.open(url,'popup','toolbar=0,scrollbars=0,location=0,statusbar=0,menubar=0,resizabl e=0,width='+w+',height='+h);
return false;
</script>
<a href="
http://www.google.com"
target="_blank" onclick="return
pop(this,470,350);">Google</a>
"Itzi" <[email protected]> escribi� en el
mensaje
news:e7dfia$qm4$[email protected]..
> Buenos dias:
> Necesito alguna forma de sacar info en una ventana
aparte a un tama�o
> determinado. Esto seria sencillo usando los
comportamientos de
> dreamweaver, si no fuera porque ese comportamiento usa
un javascript NO
> ACCESIBLE. �Algun modo/truco para hacerlo de
forma estandar??
>
> Saludos
> -
New window, javascript function to control size
Hi Everyone,
I've got the following code, and it works well:
var url = 'http://www.someplace.com/mystuff.html';
var props = 'width=450,height=570';
var js = 'window.open("' + url + '", "popup", "' + props + '"+"void(0);")';
getURL('javascript:' + js);
however, the window that had the original flash .swf file refreshes with this on the page:
[object Window]
this is happening in Firefox, and IE returns just [object]. Safari is fine. Is there some way I can avoid this message from coming up, or am I at the mercy of the browser gods?
Thanks!
-Daveuse a button to create a popup otherwise you'll run up against popup blocker problems. and use the externalinterface class to execute js functions. it's more reliable:
import flash.external.ExternalInterface;
var url = 'http://www.someplace.com/mystuff.html';
var props = 'width=450,height=570';
var js = 'window.open("'+url+'", "popup", "'+props+'"+"void(0);")';
mc.onRelease = function() {
ExternalInterface.call(js); -
[XHTML y CSS] Sacar a a ventana aparte de tama�o determinado y que sea ACCESIBLE
Buenos dias:
Necesito alguna forma de sacar info en una ventana aparte a
un tama�o
determinado. Esto seria sencillo usando los comportamientos
de dreamweaver,
si no fuera porque ese comportamiento usa un javascript NO
ACCESIBLE. �Algun
modo/truco para hacerlo de forma estandar??
SaludosPor si no queda claro, aqui pongo el codigo (para quien lo
necesite).
<script type="text/javascript">
function pop(a,w,h)
url = a.getAttribute("href");
window.open(url,'popup','toolbar=0,scrollbars=0,location=0,statusbar=0,menubar=0,resizabl e=0,width='+w+',height='+h);
return false;
</script>
<a href="
http://www.google.com"
target="_blank" onclick="return
pop(this,470,350);">Google</a>
"Itzi" <[email protected]> escribi� en el
mensaje
news:e7dfia$qm4$[email protected]..
> Buenos dias:
> Necesito alguna forma de sacar info en una ventana
aparte a un tama�o
> determinado. Esto seria sencillo usando los
comportamientos de
> dreamweaver, si no fuera porque ese comportamiento usa
un javascript NO
> ACCESIBLE. �Algun modo/truco para hacerlo de
forma estandar??
>
> Saludos
> -
OPA web determinations & POST method?
Hi,
we are using OPA web determinations in our Siebel project.
We use this Symbolic URL to communicate with OPA Application:
http://localhost:9083/web-determinations/startsession/da-DK?user=[UserID]&caseID=,[UserID],[ObjectID],DUBU
The SSO Disposition is IFrame and FreePopup command is used for this Symbolic URL, which works good, but we have an issue that the last popup window is shown, when we open the link.
Basically the last pick applet or MVG applet is opened together with the OPA link. This is because "IFrame" disposition is not supported for "FreePopup". That's why we see popup applet opening up along with Symbolic URL popup.
We need to use "Form Redirect" SSO Disposition to resolve the above problem.
But when using "Form Redirect" SSO Disposition with OPA URL we see an error which appears because OPA application could not handle POST method, but only a GET method.
How can I modify OPA to handle POST method?
ThanksTo my knowledge the integration between OPA and Siebel relies on the HTTP GET method, and cannot be modified to use POST.
-
What is the preferred way to open a new url in a new window/popup?
Hi Guys,
I have an application that requires me to show another URL (Fedex tracking number) once a button is clicked.
what is the preferred way to do it?
Should I open a new browser or a popup?
I would appreciate if you have a code example I can use.
Thanks,
Itayhi,
For opening a URL , you could also close previous window and open a new browser.
Follow the steps :
-> make an outbound plug in your window.
-> Add URL of type string as a parameter for your outbound plug.
->Do remember to add Component Name in the Properties Tab of View ( othervs Calling Outbound plug of win from view wont b psbl).
Write the below mentioned code to call a URL in the OnAction of button :
DATA lo_zexit TYPE REF TO ig_zexit .
lo_zexit = wd_this->get_zexit_ctr( ).
lo_zexit->fire_out_window_plg(
url = 'http://www.google.com' " string
here replace ig_zexit with your ig<applicatin name>.
Other way around is using Code Wizard ( control _ F7).
Write the below code in the onaction of button :
data lo_window_manager type ref to if_wd_window_manager.
data lo_api_component type ref to if_wd_component.
data lo_window type ref to if_wd_window.lo_api_component = wd_comp_controller->wd_get_api( ).
lo_window_manager = lo_api_component->get_window_manager( ).CALL METHOD lo_window_manager->CREATE_EXTERNAL_WINDOW
EXPORTING
URL = 'http://www.google.co.in/'
MODAL = ABAP_FALSE
HAS_MENUBAR = ABAP_TRUE
IS_RESIZABLE = ABAP_TRUE
HAS_SCROLLBARS = ABAP_TRUE
HAS_STATUSBAR = ABAP_TRUE
HAS_TOOLBAR = ABAP_TRUE
HAS_LOCATION = ABAP_TRUE
RECEIVING
WINDOW = lo_window.lo_window->open( ).
You can choose any way whichever suits your requirements.
I hope it helps.
Thanx. -
Is there a way to create a popup to a page in URL Redirect ?
I have a button (also with a report link column) that is doing a URL Redirect to another page in my app. This works fine.
However, some pages I branch to are small forms and a popup of that form would be more appropriate.
Is there any way to create a URL Redirect that redirects as a popup rather than a page navigation? Similarly, can you branch to a popup page with a report link column?
Thanks,
Reid
Edited by: reidster on Jul 30, 2009 7:10 PMWith your help, I was able to create a popup on a report link column using this:
I just added an "a href" around it.
Thanks again!
Edited by: reidster on Jul 30, 2009 10:18 PM
Edited by: reidster on Jul 30, 2009 10:18 PM -
How to open URL as a popup window through BRANCH in APEX reports
Hi
I am using APEX 4.0
I have a branch with a target type of URL. The branch is triggered by pressing a button. There is also a plsql process on the same button which fires at the process point of "On Submit-After Computations and Validations". I want to open the branch URL as the popup Window. I tried doing it with javascript, but then the plsql process doesn't execute. Any pointers will be helpful.
Thanks
HinaYou can use the apex.submit javascript function. This function allows to store some item value from session scope to database scope. So that a page process picks the correct item value. Not sure if it works with computations thou.
See the docs: JavaScript APIs
Example
Submits the current page with a REQUEST value of 'DELETE'.
apex.submit({ request:"DELETE", set:{"P1_DEPTNO":10, "P1_EMPNO":5433});
Then add a branch with type "branch to function returning URL" This page branch can be made conditional on the same request as the page process.
The returned url would be either include the javascript popup or window.open function or simply be the url. Important thing here would be to use a function that reads the url item from database state, since at that moment the computation or page process will have set the item on database level, but it is not directly available on page level.
meaning ":p2_item" or v('P2_ITEM') should work. &P2_ITEM. in the url will probably not work.
Maybe you are looking for
-
Mac Mini Server mid 2010 problems
I have a Mac Mini server mid 2010 model, running Mountain Lion server. It reported a fault with the HDD in the lower drive bay some months ago, so I changed the disk. It still reports a fault with a new disk and the original disk works perfectly in a
-
I have two web site up using iWeb one ftp and the other is moblie me. When I look at them in safari they look just fine, but I can't use the smaller or larger type comand. In firefox they work but not in apple own safari. Very curious and not sure if
-
How do I remove custom .exe icon?
I used a custom icon for publishing a set of recordings. I need to rebrand these and cannot remove the custom icon file designation. I tried removing the file path from the Publish dialog, but it refused to unlink that ico file and the file path pers
-
My JFrame is working perfectly. Its got a button on it that when pressed I want my panel to appear. I don't mind if the other one dissapears or stays there. I have created a JPanel in a seperate java file. Its fine aswell, but now I want it to appear
-
Facetime and Imessage stopped working
Hi guys, Sorry to bombard you with another Imessage/Facetime problem. So bascially a few nights ago, both these functions stopped working. I have tried all that is to be done from the other threads but still no luck. However my account that is also