OC4J: marshalling does not recreate the same data structure onthe client
Hi guys,
I am trying to use OC4J as an EJB container and have come across the following problem, which looks like a bug.
I have a value object method that returns an instance of ArrayList with references to other value objects of the same class. The value objects have references to other value objects. When this structure is marshalled across the network, we expect it to be recreated as is but that does not happen and instead objects get duplicated.
Suppose we have 2 value objects: ValueObject1 and ValueObject2. ValueObject1 references ValueObject2 via its private field and the ValueObject2 references ValueObject1. Both value objects are returned by our method in an ArrayList structure. Here is how it will look like (number after @ represents an address in memory):
Object[0] = com.cramer.test.SomeVO@1
Object[0].getValueObject[0] = com.cramer.test.SomeVO@2
Object[1] = com.cramer.test.SomeVO@2
Object[1].getValueObject[0] = com.cramer.test.SomeVO@1
We would expect to see the same (except exact addresses) after marshalling. Here is what we get instead:
Object[0] = com.cramer.test.SomeVO@1
Object[0].getValueObject[0] = com.cramer.test.SomeVO@2
Object[1] = com.cramer.test.SomeVO@3
Object[1].getValueObject[0] = com.cramer.test.SomeVO@4
It can be seen that objects get unnecessarily duplicated â“ the instance of the ValueObject1 referenced by the ValueObject2 is not the same now as the instance that is referenced by the ArrayList instance.
This does not only break referential integrity, structure and consistency of the data but dramatically increases the amount of information sent across the network. The problem was discovered when we found that a relatively small but complicated structure that gets serialized into a 142kb file requires about 20Mb of network communication. All this extra info is duplicated object instances.
I have created a small test case to demonstrate the problem and let you reproduce it.
Here is RMITestBean.java:
package com.cramer.test;
import javax.ejb.EJBObject;
import java.util.*;
public interface RMITestBean extends EJBObject
public ArrayList getSomeData(int testSize) throws java.rmi.RemoteException;
public byte[] getSomeDataInBytes(int testSize) throws java.rmi.RemoteException;
Here is RMITestBeanBean.java:
package com.cramer.test;
import javax.ejb.SessionBean;
import javax.ejb.SessionContext;
import java.util.*;
public class RMITestBeanBean implements SessionBean
private SessionContext context;
SomeVO someVO;
public void ejbCreate()
someVO = new SomeVO(0);
public void ejbActivate()
public void ejbPassivate()
public void ejbRemove()
public void setSessionContext(SessionContext ctx)
this.context = ctx;
public byte[] getSomeDataInBytes(int testSize)
ArrayList someData = getSomeData(testSize);
try {
java.io.ByteArrayOutputStream byteOutputStream = new java.io.ByteArrayOutputStream();
java.io.ObjectOutputStream objectOutputStream = new java.io.ObjectOutputStream(byteOutputStream);
objectOutputStream.writeObject(someData);
objectOutputStream.flush();
System.out.println(" serialised output size: "+byteOutputStream.size());
byte[] bytes = byteOutputStream.toByteArray();
objectOutputStream.close();
byteOutputStream.close();
return bytes;
} catch (Exception e) {
System.out.println("Serialisation failed: "+e.getMessage());
return null;
public ArrayList getSomeData(int testSize)
// Create array of objects
ArrayList someData = new ArrayList();
for (int i=0; i<testSize; i++)
someData.add(new SomeVO(i));
// Interlink all the objects
for (int i=0; i<someData.size()-1; i++)
for (int j=i+1; j<someData.size(); j++)
((SomeVO)someData.get(i)).addValueObject((SomeVO)someData.get(j));
((SomeVO)someData.get(j)).addValueObject((SomeVO)someData.get(i));
// print out the data structure
System.out.println("Data:");
for (int i = 0; i<someData.size(); i++)
SomeVO tmp = (SomeVO)someData.get(i);
System.out.println("Object["+Integer.toString(i)+"] = "+tmp);
System.out.println("Object["+Integer.toString(i)+"]'s some number = "+tmp.getSomeNumber());
for (int j = 0; j<tmp.getValueObjectCount(); j++)
SomeVO tmp2 = tmp.getValueObject(j);
System.out.println(" getValueObject["+Integer.toString(j)+"] = "+tmp2);
System.out.println(" getValueObject["+Integer.toString(j)+"]'s some number = "+tmp2.getSomeNumber());
// Check the serialised size of the structure
try {
java.io.ByteArrayOutputStream byteOutputStream = new java.io.ByteArrayOutputStream();
java.io.ObjectOutputStream objectOutputStream = new java.io.ObjectOutputStream(byteOutputStream);
objectOutputStream.writeObject(someData);
objectOutputStream.flush();
System.out.println("Serialised output size: "+byteOutputStream.size());
objectOutputStream.close();
byteOutputStream.close();
} catch (Exception e) {
System.out.println("Serialisation failed: "+e.getMessage());
return someData;
Here is RMITestBeanHome:
package com.cramer.test;
import javax.ejb.EJBHome;
import java.rmi.RemoteException;
import javax.ejb.CreateException;
public interface RMITestBeanHome extends EJBHome
RMITestBean create() throws RemoteException, CreateException;
Here is ejb-jar.xml:
<?xml version = '1.0' encoding = 'windows-1252'?>
<!DOCTYPE ejb-jar PUBLIC "-//Sun Microsystems, Inc.//DTD Enterprise JavaBeans 2.0//EN" "http://java.sun.com/dtd/ejb-jar_2_0.dtd">
<ejb-jar>
<enterprise-beans>
<session>
<description>Session Bean ( Stateful )</description>
<display-name>RMITestBean</display-name>
<ejb-name>RMITestBean</ejb-name>
<home>com.cramer.test.RMITestBeanHome</home>
<remote>com.cramer.test.RMITestBean</remote>
<ejb-class>com.cramer.test.RMITestBeanBean</ejb-class>
<session-type>Stateful</session-type>
<transaction-type>Container</transaction-type>
</session>
</enterprise-beans>
</ejb-jar>
And finally the application that tests the bean:
package com.cramer.test;
import java.util.*;
import javax.rmi.*;
import javax.naming.*;
public class RMITestApplication
final static boolean HARDCODE_SERIALISATION = false;
final static int TEST_SIZE = 2;
public static void main(String[] args)
Hashtable props = new Hashtable();
props.put(Context.INITIAL_CONTEXT_FACTORY, "com.evermind.server.rmi.RMIInitialContextFactory");
props.put(Context.PROVIDER_URL, "ormi://lil8m:23792/alexei");
props.put(Context.SECURITY_PRINCIPAL, "admin");
props.put(Context.SECURITY_CREDENTIALS, "admin");
try {
// Get the JNDI initial context
InitialContext ctx = new InitialContext(props);
NamingEnumeration list = ctx.list("comp/env/ejb");
// Get a reference to the Home Object which we use to create the EJB Object
Object objJNDI = ctx.lookup("comp/env/ejb/RMITestBean");
// Now cast it to an InventoryHome object
RMITestBeanHome testBeanHome = (RMITestBeanHome)PortableRemoteObject.narrow(objJNDI,RMITestBeanHome.class);
// Create the Inventory remote interface
RMITestBean testBean = testBeanHome.create();
ArrayList someData = null;
if (!HARDCODE_SERIALISATION)
// ############################### Alternative 1 ##############################
// ## This relies on marshalling serialisation ##
someData = testBean.getSomeData(TEST_SIZE);
// ############################ End of Alternative 1 ##########################
} else
// ############################### Alternative 2 ##############################
// ## This gets a serialised byte stream and de-serialises it ##
byte[] bytes = testBean.getSomeDataInBytes(TEST_SIZE);
try {
java.io.ByteArrayInputStream byteInputStream = new java.io.ByteArrayInputStream(bytes);
java.io.ObjectInputStream objectInputStream = new java.io.ObjectInputStream(byteInputStream);
someData = (ArrayList)objectInputStream.readObject();
objectInputStream.close();
byteInputStream.close();
} catch (Exception e) {
System.out.println("Serialisation failed: "+e.getMessage());
// ############################ End of Alternative 2 ##########################
// Print out the data structure
System.out.println("Data:");
for (int i = 0; i<someData.size(); i++)
SomeVO tmp = (SomeVO)someData.get(i);
System.out.println("Object["+Integer.toString(i)+"] = "+tmp);
System.out.println("Object["+Integer.toString(i)+"]'s some number = "+tmp.getSomeNumber());
for (int j = 0; j<tmp.getValueObjectCount(); j++)
SomeVO tmp2 = tmp.getValueObject(j);
System.out.println(" getValueObject["+Integer.toString(j)+"] = "+tmp2);
System.out.println(" getValueObject["+Integer.toString(j)+"]'s some number = "+tmp2.getSomeNumber());
// Print out the size of the serialised structure
try {
java.io.ByteArrayOutputStream byteOutputStream = new java.io.ByteArrayOutputStream();
java.io.ObjectOutputStream objectOutputStream = new java.io.ObjectOutputStream(byteOutputStream);
objectOutputStream.writeObject(someData);
objectOutputStream.flush();
System.out.println("Serialised output size: "+byteOutputStream.size());
objectOutputStream.close();
byteOutputStream.close();
} catch (Exception e) {
System.out.println("Serialisation failed: "+e.getMessage());
catch(Exception ex){
ex.printStackTrace(System.out);
The parameters you might be interested in playing with are HARDCODE_SERIALISATION and TEST_SIZE defined at the beginning of RMITestApplication.java. The HARDCODE_SERIALISATION is a flag that specifies whether Java serialisation should be used to pass the data across or we should rely on OC4J marshalling. TEST_SIZE defines the size of the object graph and the ArrayList structure. The bigger this size is the more dramatic effect you get from data duplication.
The test case outputs the structure both on the server and on the client and prints out the size of the serialised structure. That gives us sufficient comparison, as both structure and its size should be the same on the client and on the server.
The test case also demonstrates that the problem is specific to OC4J. The standard Java serialisation does not suffer the same flaw. However using the standard serialisation the way I did in the test case code is generally unacceptable as it breaks the transparency benefit and complicates interfaces.
To run the test case:
1) Modify provider URL parameter value on line 15 of the RMITestApplication.java for your environment.
2) Deploy the bean to the server.
4) Run RMITestApplication on a client PC.
5) Compare the outputs on the server and on the client.
I hope someone can reproduce the problem and give their opinion, and possibly point to the solution if there is one at the moment.
Cheers,
Alexei
Hi,
Eugene, wrong end user recovery. Alexey is referring to client desktop end user recovery which is entirely different.
Alexy - As noted in the previous post:
http://social.technet.microsoft.com/Forums/en-US/bc67c597-4379-4a8d-a5e0-cd4b26c85d91/dpm-2012-still-requires-put-end-users-into-local-admin-groups-for-the-purpose-of-end-user-data?forum=dataprotectionmanager
Each recovery point has users permisions tied to it, so it's not possible to retroacively give the users permissions. Implement the below and going forward all users can restore their own files.
This is a hands off solution to allow all users that use a machine to be able to restore their own files.
1) Make these two cmd files and save them in c:\temp
2) Using windows scheduler – schedule addperms.cmd to run daily – any new users that log onto the machine will automatically be able to restore their own files.
<addperms.cmd>
Cmd.exe /v /c c:\temp\addreg.cmd
<addreg.cmd>
set users=
echo Windows Registry Editor Version 5.00>c:\temp\perms.reg
echo [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft Data Protection Manager\Agent\ClientProtection]>>c:\temp\perms.reg
FOR /F "Tokens=*" %%n IN ('dir c:\users\*. /b') do set users=!users!%Userdomain%\\%%n,
echo "ClientOwners"=^"%users%%Userdomain%\\bogususer^">>c:\temp\perms.reg
REG IMPORT c:\temp\perms.reg
Del c:\temp\perms.reg
Please remember to click “Mark as Answer” on the post that helps you, and to click “Unmark as Answer” if a marked post does not actually answer your question. This can be beneficial to other community members reading the thread. Regards, Mike J. [MSFT]
This posting is provided "AS IS" with no warranties, and confers no rights.
Similar Messages
-
The executible I build with the application builder does not function the same as my VI file.
I am using a USB 6008 device with the newest DAQmx drivers and Labview
8.2 to make analog voltage readings. Within my main VI I first
create a data folder in the same location as the VI using a property
node and then use case statements to call two sub VIs that create a
data file within the data folder and then collects data. When I use the
application builder to create an executible the resulting file does not
operate the same as the origional VI. The program appears to be
reacting to button presses on the GUI, but there is no indication that
the data folder is being created or that any measurements are buing
made. Are there any known issues that may account for this
anomily?
-Mike
Message Edited by TMBurleson on 10-16-2006 03:09 PMAre you using the VI Path property, using a reference to the current VI?
I could be wrong, but if you're attempting to use a path relative to the current VI, I think that does indeed change in a built application. If your VI used to be C:\somewhere\foo.VI, then after building its path would actually be C:\somewhere\foo.EXE\foo.vi . Thus, if foo.VI used to try to make a folder like C:\somewhere\datafolder, the built application would be trying to make C:\somewhere\foo.EXE\datafolder , which wouldn't work.
This is sort of a shot in the dark, but does this sound like it might be the case?
EDIT: Dennis beat me to it.Message Edited by kehander on 10-16-2006 03:26 PM -
Conversion does not look the same?
I converted a pdf file to a word document last night and the page does not look the same. It is a weekly time log and the lines are messed up and the font is not placed correctly. Is there any way to fix this?
Good day,
What you described is fairly common for conversions where the PDF file that's being converted to Word wasn't originally created from Word. The service does the best it can to interpret the font data as well as the formatting, but as that information is often not present within the code of the PDF file, sometimes the resulting Word document does not exactly resemble the PDF file.
Kind regards,
David
Acrobat Community Manager
Adobe Systems -
Copy opening does not clear the destination data - Just appends
Hi All,
Copy opening does not clear the destination data. It just appends so if i run the copy opening package twice i can see the signed data get doubled.
We have SAP BPC NW 7.5 SP08 Patch 1001.
I working on the Periodic Application.
Copy opening Script logic:
*FOR %TIME% = %TIME_SET%
*RUN_PROGRAM COPYOPENING
CATEGORY = %CATEGORY_SET%
CURRENCY = %CURRENCY_SET%
TID_RA = %TIME%
OTHER = [B_ENTITY=%B_ENTITY_SET%]
*ENDRUN_PROGRAM
*NEXT
Carry-forward business rules
Source account : BALANCE SHEET ACCOUNTS
Source flow : F99
Dest account :
Dest flow : F00
Reverse sign : FALSE
Data source type : ALL
Same period :FALSE
Apply to YTD : False
Category dimension:
ID ACTUAL BUDGET
EVDESCRIPTION Actual BUDGET
PARENTH1
YEAR 2008 2011
COMPARISON BUDGET NBUDGET
STARTMTH 1 1
CATEGORY_FOR_OPE ACTUAL
FX_SOURCE_CATEGORY
RATE_CATEGORY
RATE_YEAR
RATE_PERIOD
FX_DIFFERENCE_ONLY
OPENING_YEAR
OPENING_PERIOD
OWNER [ADMIN] [ADMIN]
STORED_CALC
REVIEWER_CAT
Appreciate any help.
Regards
MehulSnote 1620613 has fixed the issue
Regards
Mehul -
Where and how do I fix this?
We found that your app does not follow the iOS Data Storage Guidelines, which is required per the App Store Review Guidelines.
In particular, we found that on launch and/or content download, your app stores 3.54MB. To check how much data your app is storing:
- Install and launch your app
- Go to Settings > iCloud > Storage & Backup > Manage Storage
- If necessary, tap "Show all apps"
- Check your app's storage
The iOS Data Storage Guidelines indicate that only content that the user creates using your app, e.g., documents, new files, edits, etc., should be backed up by iCloud.
Temporary files used by your app should only be stored in the /tmp directory; please remember to delete the files stored in this location when the user exits the app.
Data that can be recreated but must persist for proper functioning of your app - or because customers expect it to be available for offline use - should be marked with the "do not back up" attribute. For NSURL objects, add the NSURLIsExcludedFromBackupKey attribute to prevent the corresponding file from being backed up. For CFURLRef objects, use the corresponding kCFURLIsExcludedFromBackupKey attribute.You're submitting a Newsstand app, right? This error is still under investigation, but the current workaround is create SD (1024x768/768x1024) cover images for your HD (2048x1536) folio renditions and try again.
More info here:
http://forums.adobe.com/message/4730637#4730637 -
HT4157 I have an iPad 2 and it does not display the cellular data button under settings
I have an iPad 2 and it does not display the cellular data button under settings. It does display a Bluetooth button in its place. I have tried the reset but no luck
Is the iPad the Cellular version? Does it have an active Data plan? Does it have a Sim card installed in inside it?
-
Applet does not function the same.
When I run my applet in IBM Visual Age it works fine. When I run it in my browser it does not function the same. It has to save a file on to my hardrive but it doesn't work. Can someone help.
Thank youcorrection
*hundreds of things*
You gotta post some code, tell us what kind of error
messages you're getting, or something. It could be
dozens of things. -
Cat0-3750 upgrade. Error: system number 1 does not support the same feature
I am trying to upgrade or rather downgrade from ipadvservices (inadvertently upgraded to) to ipservices on a stack of Cat-3750s, but I get the following error message:
Ios Image File Size: 0x00877A00
Total Image File Size: 0x00B04200
Minimum Dram required: 0x08000000
Image Suffix: ipservicesk9-122-37.SE1
Image Directory: c3750-ipservicesk9-mz.122-37.SE1
Image Name: c3750-ipservicesk9-mz.122-37.SE1.bin
Image Feature: IP|LAYER_3|PLUS|SSH|3DES|MIN_DRAM_MEG=128
Error: The image in the archive which would be used to upgrade
Error: system number 1 does not support the same feature set.
Any ideas?
ChrisI was having the same issue even with entering the following:
archive download-sw /overwrite /allow-feature-upgrade tftp://172.18.108.26/c3kx-sm10g-tar.150-2.SE7.tar
I noticed the image which was running on the switch was correct without the ".bin" at the end:
3560#sh ver | i image
System image file is "flash:c3560e-universalk9-mz.150-2.SE7"
I uploaded a fresh IOS image from CCO and made sure the image name had ".bin" at the end. Seems trivial except the error is produced through a sanity check. See below (please excuse the extra unplugging in the output):
3560#sh ver | i image
System image file is "flash:c3560e-universalk9-mz.150-2.SE7.bin"
3560#$de tftp://172.18.108.26/c3kx-sm10g-tar.150-2.SE7.tar
Loading c3kx-sm10g-tar.150-2.SE7.tar from 172.18.108.26 (via Vlan1): !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!
Mar 30 01:33:35.480: %USBFLASH-5-CHANGE: usbflash0 has been removed!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
Mar 30 01:34:15.636: %PLATFORM_ENV-1-FRU_PS_ACCESS: FRU Power Supply is not responding!!!!!!!!!!!
[OK - 24893440 bytes]
Loading c3kx-sm10g-tar.150-2.SE7.tar from 172.18.108.26 (via Vlan1): !!!
Mar 30 01:34:35.593: %PLATFORM_ENV-6-FRU_PS_OIR: FRU Power Supply 2 removed!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
examining image...
extracting info (100 bytes)
extracting c3kx-sm10g-mz.150-2.SE7/info (499 bytes)
extracting info (100 bytes)
System Type: 0x00010002
Ios Image File Size: 0x017BDA00
Total Image File Size: 0x017BDA00
Minimum Dram required: 0x08000000
Image Suffix: sm10g-150-2.SE7
Image Directory: c3kx-sm10g-mz.150-2.SE7
Image Name: c3kx-sm10g-mz.150-2.SE7.bin
Image Feature: IP|LAYER_3|MIN_DRAM_MEG=128
FRU Module Version: 03.00.78
Updating FRU Module on switch 1...
Updating FRU FPGA image...
FPGA image update complete.
All software images installed.
Worked for me, hope this helps. -
N81 does not retain the correct date...
My N81 got a very strange problem: it does not retain the correct date....
Usually it's wrong by two days ago....!
The S.O. Ver. is: 10.0.32
Thanks you and sorry for my english...! :-)hi there, have you checked that there is a firmware update for your model? v10 sounds like the original firmware for the N81. i would suggest checking on your PC via Nokia Software Updater for any firmware updates. the latest firmware version for the N81, unbranded or not, is v21.
If you found this or someone's comments helpful or like what that person has to say, please give some Kudos to their post! -
Firefox causes crash when using Youtube explorer does not have the same effect
firefox causes crash when using Youtube explorer does not have the same effect
Troubleshooting extensions and themes
* https://support.mozilla.com/en-US/kb/Troubleshooting%20extensions%20and%20themes
Check and tell if its working. -
I delete an email on my iphone but it does not delete the same email on my laptop. Any suggestions to help?
Yes, There are actually 4 calendars listed under my iCloud account. The listing on my iPhone is exactly like the listing on my iPad. The iPad is updating but not the iPhone. It's odd because the iPhone did work at one time so I'm assuming it some setting I've changed. I have checked and double checked that the settings on both devices are the same. Do you have any other ideas?
Thanks for your help. -
My Imac late 2012 running Yosemite does not recognise my Huawei 3g usb modem. itried to install Java bt still it does not although the same modem works with my MacBook pro . any help please
Hey there mbarikiwa,
If your iMac still has not recognized the usb modem, I would use the troubleshooting for Yosemite USB issues in the following article:
OS X Yosemite: If a USB device isn’t working
If the device is connected to a USB hub:
Make sure the device and the hub are the same speed. Connect USB 3.0 SuperSpeed devices to a USB 3.0 SuperSpeed HUB, USB 2.0 Hi-Speed devices to a USB 2.0 Hi-Speed hub, and so on.
If the device doesn’t have a power cord and is plugged into another USB device that doesn’t have a power cord:
Try plugging the device directly into your computer’s USB port or into a USB device that does have a power cord. You might need to disconnect and reconnect the other device as well, if it has stopped responding.
If you have many devices connected to your Mac:
Disconnect all USB devices except the device you’re testing, an Apple keyboard, and an Apple mouse. Make sure that the device is connected directly to the computer, and that any hubs or extension cables are disconnected. If you can use the device now, the problem may be with one of the other USB devices or hubs you had connected to your computer. Try reconnecting them, one by one, to your computer. When you find the device causing the problem, review its documentation for further troubleshooting steps.
Verify that the device appears in System Information:
Choose Apple menu > About This Mac. In the window that appears, click Overview, then click the System Report button to open System Information.
In the window that appears, see if the USB device is listed below Hardware in the Contents list. If the device appears but does not work, review the device’s documentation for further troubleshooting steps.
Restart apps:
Quit and restart any apps that use the device.
Restart your Mac:
Choose Apple menu > Restart.
Check your device’s USB connection
Thank you for using Apple Support Communities.
All the very best,
Sterling -
Field Explorer in Crystal Reports does not show the same names as Bex Query
Hi
I have crystal reports, I can retrieve data from BW Bex Query. But in the field explorer it does not show the names as in the Bex query designer.
In the Bex query designer a field will have the following technical name 0Debitor and the description is Customer.
It shows in crystal reports in the field explorer twice as D[0DEBITOR]D and D[0DEBITOR]D. It also does not seperate key figures and characteristics.
I would like it to display the field explorer as shown in this blog.
/people/ingo.hilgefort/blog/2008/02/19/businessobjects-and-sap-part-2
Thanks in advanceHi,
take a look here:
/people/ingo.hilgefort/blog/2008/02/19/businessobjects-and-sap-part-2
make sure you are using the MDX Driver and what happens is that you will see several fields per characteristic. example: one for the key, one for the description, several if modelled for the display attributes
Ingo -
Button does not make the same thing in English and in German
Hi
I have created an HTMLDB-Application (HTMLDB 2.0) with two Pages:
Page1 has one Region in which there is one Report and two Buttons. Button1 has the Label 'German' and Button2 has the Label 'English'.
Page2 is a HTML-Page wich only gives a success-Message.
Page1: There is a Process1 wich is activated when Button1 is pressed. The Process sets the 'FSP_LANGUAGE_PREFERENCE' to German (de-ch) which is the Applications primary language. After that the Application branches to Page2
There is a Process2 wich is activated when Button2 is pressed. The Process sets the 'FSP_LANGUAGE_PREFERENCE' to English (en). After that the Application branches to Page2
When the Application has the FSP_LANGUAGE_PREFERENCE = de-ch and I tick the Button2 (English) the Application branches to Page2 and sets the FSP_LANGUAGE_PREFERENCE = en.
When the Application then has the FSP_LANGUAGE_PREFERENCE = en and i tick the Button2 (German) the application only reloads the page and it doesn't start the process and doesn't branch to page2. The same happens when FSP_LANGUAGE_PREFERNCE = en and I press the Button1 (English).
It seems that the Application can not see the processes and the branches when the FSP_LANGUAGE_PREFERENCE is en.
Does anyone have an Idea what could be the reason?
Thanks in advance.
Daniel
nullHi Daniel
When I run your application, the language is set to en. Both the Englisch ENG and Deutsch buttons are javascript:redirect's to page 1, which as I understand it, will change the page in the browser as though you had typed in the address directly. It does not submit the page, and therefore the processes do not run.
When you run the page in german, what do the button links point to?
Have you made any changes to the german version, and not re-published the english version?
I'm not an HTML DB expert, so I hope what I've said is correct and it helps you.
Regards,
James -
My elements does not look the same as the tutorial
Hi
I hope someone can help me. Why does my photoshop elements 13 (newly installed -maybe this is the problem/)not look the same as the one on the tutorial? My top line only has eLive, Quick, Guidedand Expert. No Media or People? Do I have a cheaper version(did not think I bought a "lighter "version)
Thank you
Kind Regards
Jeanelde MoutonGood day!
Please post Photoshop Elements related queries over at
http://forums.adobe.com/community/photoshop_elements
Regards,
Pfaffenbichler
Maybe you are looking for
-
File name of Document stored through OAAD
Hi Experts, We are using tcode - OAAD to store any document against employee. Following are the inputs provided to the system while storing the document. 1. Business Object - The value used in our case is "PREL" 2. Document type - The value used in o
-
N8 - Use of WLAN rather than USB lead or Bluetooth
Is there an application available for the N8 to allow the use of WLAN to copy files across to a PC, rather than having to use Bluetooth or the USB lead. I quite often use Bluetooth to transfer files such as Images but WLAN would be much faster. Histo
-
When clicking the + tab in the tab bar how do I set new tabs to automatically open my home page
When clicking the + tab in the tab bar how do I set new tabs to automatically open my home page
-
Enable/Disable Button Depending On User Role
Hi all, I have some buttons in a portlet. I have consumed this portlet in a webcenter portal application. Now i want to disable/enable these buttons according to the user role. How can i achieve this?? Thanks, Dhiraj
-
Which is sold more 30gb or 60gb.
Does anyone know which ipod video is sold more, any which is better to purchase