JSF Ri 1.1: Conversion executed in the wrong life cycle?
Hi,
If you look at the converter api doc of getObjectAs it states: "Convert the specified string value, which is associated with the specified UIComponent, into a model data object that is appropriate for being stored during the Apply Request Values phase of the request processing lifecycle."
However when I run a simple test with a debug phaselistener and a converter and they print data using system.out.println I see that the getAsObject is called in the process validations phase. I think this is incorrect. Has anybody seen this before?
With kind regards,
/Arnoud.
Before:RESTORE_VIEW 1
After:RESTORE_VIEW 1
Before:APPLY_REQUEST_VALUES 2
After:APPLY_REQUEST_VALUES 2
Before:PROCESS_VALIDATIONS 3
Converter getAsObject
After:PROCESS_VALIDATIONS 3
Before:UPDATE_MODEL_VALUES 4
After:UPDATE_MODEL_VALUES 4
Before:INVOKE_APPLICATION 5
After:INVOKE_APPLICATION 5
Before:RENDER_RESPONSE 6
Converter getAsString
After:RENDER_RESPONSE 6
It seems then, that the 1.1 specification has contradictions:
Under Section "3.3.2 Converter" it clearly reads as it was quoted above:
+This method [getAsObject] is used to convert the presentation view of a components value+
+(typically a String that was received as a request parameter) into the corresponding+
+model view. It is called during the Apply Request Values phase of the request+
processing lifecycle.
There is no mention here of the immediate flag, so one should be able to assume that
Apply Request Values is the phase in which the getAsObject method is normally executed.
Then there's there's this quote from Section "2.2.2 Apply Request Values":
Components that implement EditableValueHolder (such as UIInput), and
whose immediate property is set to true, will cause the conversion and
validation processing (including the potential to fire ValueChangeEvent events)
+that normally happens during Process Validations phase to occur during Apply+
Request Values phase instead.
How can it be that conversion "normally happens during Process Validations phase"
when a converter's getAsObject method is called called during the Apply Request Values
phase? Isn't that contradictory?
Similar Messages
-
Mailman executed as the "wrong" group
After I installed a few updates and restarted my server mailman won't accept mails and throws this error instead:
Command died with
status 2: "/usr/lib/mailman/mail/mailman post admins". Command output:
Group mismatch error. Mailman expected the mail wrapper script to be
executed as group "80", but the system's mail server executed the mail
script as group "mailman". Try tweaking the mail server to run the script
as group "80", or re-run configure, providing the command line option
`--with-mail-gid=mailman'.
but the group with id 80 is the mailman group...
grep mailman /etc/group
mailman:x:80:
The mail server is a normal postfix setup and all the alias tables and transport maps are owned by the group mailman.
ls -l /var/lib/mailman/data/
insgesamt 60
-rw-r----- 1 mailman mailman 41 6. Feb 2011 adm.pw
-rw-rw---- 1 mailman mailman 1887 6. Feb 2011 aliases
-rw-rw---- 1 mailman mailman 12288 26. Feb 16:31 aliases.db
-rw-r----- 1 mailman mailman 41 6. Feb 2011 creator.pw
-rw-rw---- 1 mailman mailman 6 27. Feb 09:05 master-qrunner.pid
-rw-r--r-- 1 mailman mailman 14100 18. Feb 16:51 sitelist.cfg
-rw-rw---- 1 mailman mailman 1184 6. Feb 2011 virtual-mailman
-rw-rw---- 1 mailman mailman 12288 6. Feb 2011 virtual-mailman.db
Why is mailman complaining that it is executed with the wrong group when it is actually executed with the correct group?Allan wrote:Please file a bug report.
done -
Where in the MIDlet life-cycle should I create multiple forms with LWUIT ?
Hi all,
I must create two LWUIT forms in my application. Where should I create the two forms ? I created the first form in the startApp life-cycle method , and when I tried to create also the second form in the startApp method then there is a NullPointerException raised when running the application !
So where , or how , should I create the second form ?
Thank you very much indeed
Edited by: andrianiaina on May 20, 2011 1:59 AMI think the problem here is that Arlhoolie wants all of the different TEBs to behave as if they were part of a single interaction that submits only ONE result to the quiz. Using multiple TEBs in Captivate means that you have multiple scored objects and therefore multiple results being submitted to the quiz.
If you want a single Success or Failure result submitted to the quiz based on the results from multiple interactive objects then there really is no simple way to do it. But you could try using the Infosemantics Interactive Master widget to combine all the TEBs as slave objects that report to the Master Widget, which then reports a single score to the quiz based on the results from the slave objects.
You can learn more about the Master widget here:
http://www.infosemantics.com.au/adobe-captivate-widgets/interactive-master
http://www.infosemantics.com.au/interactivemaster/help
You can download a free trial version of the widget here:
http://www.infosemantics.com.au/adobe-captivate-widgets/download-free-trial-widgets
One caveat you should be aware of is that this widget is not HTML5 compatible. -
Sequence of Elements in the JSP Life Cycle
How do I place several elements such as
Create Instance
Page translation
JSP compilation
Load class
in the JSP life cycle
Call jspInit
Call _jspService
Call jspDestroySee if http://java.sun.com/j2ee/tutorial/doc/JSPIntro4.html#62582 if this is what you wanted to know.
-
What is the total life cycle involved in any project
Hi ,
Can n e body help me in knowing the complete life cycle of any project.
Starting from the point customer wants to implement SAP for their business to implementation and support.
thanks in advance,
sastryDear Sastry,
It actually depends on various factors, such as :
1. how many modules they want to implement.
2. Team Size.
3. Organizational Structure (Volume of data)
4. Legacy System
5. Business Complexity etc.
There is no hard and fast rule that every project should be completed in a particular duration of time. Depending on the above factors, it may vary any where from 6 months to 18 months or so. (Approximately, it may be less than 6 months or more than 18 months in some exceptional cases).
Usually it is divided into phases:
1. Project Preparation : Project team, infrastructure, Software, Steering committe etc will be identified in this phase.
2. Business Blue Print : Re-engineering of Business process and BBP sign off.
3. Realization : Analysing Gap and Realization of possible customization and development effort
4. Final Preparation : Development and Configuration
5. Go Live and Post Go Live support : Going Live and Support after go live
You would allot specific time periods for each of these phases and will set milestones accordingly.
or it could even be like :
Project Start
Analysis
Design
Design Freeze / Client Sign-off
Construction
Testing
Implementation
Project End
Project Management Framework
Post Close Review
Training
Change Management
Refer following links for more info:
http://en.wikipedia.org/wiki/SAP_Implementation
http://www.sapfans.com/sapfans/asap/be_01_e.htm
Reward points if it is helpful.
Thanks and Regards,
Naveen. -
Feedback on the potential use of the tool and about the Task Life Cycle
Hi
The task statuses does not considers some statues. We have worked on the task lifecycle for workflows (see image below). You are missing: Created, offered, allocated before getting the category of not started because otherwise your problem might be to not have resources availables.
Once In Progress a task can be suspended/resumed, delegated.Failed or Cancelled, skipped. Once a task is Completed, At Risk and Failed.:
We have been working on workflow modeling for developing UIs. The WorkflowLab project has a lot of potential if we imagine an automated process to generate Flex (Information Systems) applications based on Workflows. Imagine that the granular details of a task are mapped onto Flex UIs.
Have you ever consider this potential of using a workflow model as a design of an Information system?If you need further information, this is a site with publicly available papers of this topic.
http://www.isys.ucl.ac.be/bchi/members/jgu/publications.htm
The main topic is on how from a workflow model the User Interfaces of the system modeled can be generated but special atention has been paid to task modeling.
If we can be of any help we would be very pleased to collaborate with your project.
Juan -
Jsf 1s phase of life cycle how knows ths components of the jsp with jsf tag
i wish to know how faces servlet knows the jsp s view components while creaTI NG component tree at first request to input jsp which may have jsf tags.in the first phase faces servlet doesnot know input jsp with jsf tags what componnets it has. it is actually atthe response send or forward time which is the final phase when the tag ge executed and output is sent to client.i did understandin jsf life cycle in 1 st phase component tree is created at first request in 1 st phase .
Hi,
though a FacesContext holds the values used by a request, it doesn't mean it lives for as long as the request. The best explanation I found is from the JavaDocs
release
public abstract void release()
+Release any resources associated with this FacesContext instance. Faces implementations may choose to pool instances in the associated FacesContextFactory to avoid repeated object creation and garbage collection. After release() is called on a FacesContext instance (until the FacesContext instance has been recycled by the implementation for re-use), calling any other methods will cause an IllegalStateException to be thrown.+
The implementation must call setCurrentInstance(javax.faces.context.FacesContext) passing null to remove the association between this thread and this dead FacesContext instance.
Throws:
java.lang.IllegalStateException - if this method is called after this instance has been released
Frank -
Leaving Action executed in the Middle Of the Payroll Period
Dear All,
I am Trying to execute Leaving action For the Employee in the middle of the Payroll period thereby changing his Employee Group to Pensioner and also his payroll area to that of Pensioner.However the System is not allowing me to do so and is saying that Payroll area cannot be changed in the middle Of the Payroll Period.Plz Suggest what can be done so that the Leaving action Of the Employee can be executed in the Middle of the Payroll Period.
Thanks
Punam JhaHi,
In a payroll period, you can not include the same employee in two different payroll processing. Hence, you can assign the new payroll area at the beginning of the next payroll period. Alternatively, execute the separation action with the last date of the pay period.
regards
Mohan M
Edited by: M Mohan on Dec 21, 2009 2:34 PM -
Search cannot be executed because the table has pending changes
I'm getting the following error ..... The search cannot be executed because the table has pending changes that would be lost .... in the following scenario ....
My 1st page is a search page with resulting rows from which the user can select specific rows to process ..... next button will populate the VO for the 2nd page by manually looping thru the selected rows in the VO of the 1st page. Loop logic is in the AM and it calls a method in the VORowImpl that uses setAttributeInternal .... the 2nd page displays the selected rows .....
Pressing the back button of the 2nd page will display the 1st page and if the user tries to do a new search .... the error shows up.
Any suggestions on how to handle this?
Thank you.It seems to me that you are using the same VO on both the pages. If that is the case try to use separate VO for each page.
And as suggested by Sumit, Never use/ rely on browser back button. Instead put a Back button on the second page through you can handle the event yourself rather than leaving on the mercy of browser.
--Saroj -
Hello,
I'm working a developing an OA page that will displays the contents of an Oracle table and allows the user to update records in a table as needed.
When I hit submit button to save the changes in the update page, the control goes back to main page (where all the table records are displayed). It displays the updated record with the new information.However when I hit "Go" button on the mainPG, I get the error "The search cannot be executed because the table has pending changes that would be lost. and the changes are not committed.
ANy suggestions on where I should look will be greatly appreciated.
Posting code for my controller
=======================
if ( pageContext.getParameter("saveRate") != null )
personam.invokeMethod("saveRateToDatabase");
Code from my AM
=============
public void saveRateToDatabase()
getOADBTransaction().commit();
System.out.println("40--After commit has been executed");
Code from my VORowImpl
===================
package cggv.oracle.apps.gl.server;
import oracle.apps.fnd.framework.server.OAViewRowImpl;
import oracle.jbo.domain.Date;
import oracle.jbo.domain.Number;
import oracle.jbo.server.AttributeDefImpl;
// --- File generated by Oracle ADF Business Components Design Time.
// --- Custom code may be added to this class.
// --- Warning: Do not modify method signatures of generated methods.
public class xxCggGlRatesVORowImpl extends OAViewRowImpl {
public static final int RATEID = 0;
public static final int FROMCURRENCY = 1;
public static final int TOCURRENCY = 2;
public static final int FROMCONVERSIONDATE = 3;
public static final int TOCONVERSIONDATE = 4;
public static final int USERCONVERSIONTYPE = 5;
public static final int CONVERSIONRATE = 6;
public static final int MODEFLAG = 7;
/**This is the default constructor (do not remove)
public xxCggGlRatesVORowImpl() {
/**Gets the attribute value for the calculated attribute RateId
public Number getRateId() {
return (Number) getAttributeInternal(RATEID);
/**Sets <code>value</code> as the attribute value for the calculated attribute RateId
public void setRateId(Number value) {
setAttributeInternal(RATEID, value);
//populateAttribute(RATEID, value);
/**Gets the attribute value for the calculated attribute FromCurrency
public String getFromCurrency() {
return (String) getAttributeInternal(FROMCURRENCY);
/**Sets <code>value</code> as the attribute value for the calculated attribute FromCurrency
public void setFromCurrency(String value) {
setAttributeInternal(FROMCURRENCY, value);
/**Gets the attribute value for the calculated attribute ToCurrency
public String getToCurrency() {
return (String) getAttributeInternal(TOCURRENCY);
/**Sets <code>value</code> as the attribute value for the calculated attribute ToCurrency
public void setToCurrency(String value) {
setAttributeInternal(TOCURRENCY, value);
/**Gets the attribute value for the calculated attribute FromConversionDate
public Date getFromConversionDate() {
return (Date) getAttributeInternal(FROMCONVERSIONDATE);
/**Sets <code>value</code> as the attribute value for the calculated attribute FromConversionDate
public void setFromConversionDate(Date value) {
setAttributeInternal(FROMCONVERSIONDATE, value);
/**Gets the attribute value for the calculated attribute ToConversionDate
public Date getToConversionDate() {
return (Date) getAttributeInternal(TOCONVERSIONDATE);
/**Sets <code>value</code> as the attribute value for the calculated attribute ToConversionDate
public void setToConversionDate(Date value) {
setAttributeInternal(TOCONVERSIONDATE, value);
/**Gets the attribute value for the calculated attribute UserConversionType
public String getUserConversionType() {
return (String) getAttributeInternal(USERCONVERSIONTYPE);
/**Sets <code>value</code> as the attribute value for the calculated attribute UserConversionType
public void setUserConversionType(String value) {
setAttributeInternal(USERCONVERSIONTYPE, value);
/**Gets the attribute value for the calculated attribute ConversionRate
public Number getConversionRate() {
return (Number) getAttributeInternal(CONVERSIONRATE);
/**Sets <code>value</code> as the attribute value for the calculated attribute ConversionRate
public void setConversionRate(Number value) {
setAttributeInternal(CONVERSIONRATE, value);
/**Gets the attribute value for the calculated attribute ModeFlag
public String getModeFlag() {
return (String) getAttributeInternal(MODEFLAG);
/**Sets <code>value</code> as the attribute value for the calculated attribute ModeFlag
public void setModeFlag(String value) {
setAttributeInternal(MODEFLAG, value);
/**getAttrInvokeAccessor: generated method. Do not modify.
protected Object getAttrInvokeAccessor(int index,
AttributeDefImpl attrDef) throws Exception {
switch (index) {
case RATEID:
return getRateId();
case FROMCURRENCY:
return getFromCurrency();
case TOCURRENCY:
return getToCurrency();
case FROMCONVERSIONDATE:
return getFromConversionDate();
case TOCONVERSIONDATE:
return getToConversionDate();
case USERCONVERSIONTYPE:
return getUserConversionType();
case CONVERSIONRATE:
return getConversionRate();
case MODEFLAG:
return getModeFlag();
default:
return super.getAttrInvokeAccessor(index, attrDef);
/**setAttrInvokeAccessor: generated method. Do not modify.
protected void setAttrInvokeAccessor(int index, Object value,
AttributeDefImpl attrDef) throws Exception {
switch (index) {
case RATEID:
setRateId((Number)value);
return;
case FROMCURRENCY:
setFromCurrency((String)value);
return;
case TOCURRENCY:
setToCurrency((String)value);
return;
case FROMCONVERSIONDATE:
setFromConversionDate((Date)value);
return;
case TOCONVERSIONDATE:
setToConversionDate((Date)value);
return;
case USERCONVERSIONTYPE:
setUserConversionType((String)value);
return;
case CONVERSIONRATE:
setConversionRate((Number)value);
return;
case MODEFLAG:
setModeFlag((String)value);
return;
default:
super.setAttrInvokeAccessor(index, value, attrDef);
return;
/**Gets xxCggGlRatesEO entity object.
public xxCggGlRatesEOImpl getxxCggGlRatesEO() {
return (xxCggGlRatesEOImpl)getEntity(0);Hi,
Check these links:
Oracle Apps: Search cannot be executed because the table has pending changes that would be lost
Re: Getting error in search page search cannot be executed
http://jneelmani.blogspot.in/2009/11/oaf-search-cannot-be-executed-because.html
--Sushant -
Good day,
On Search Page, I have searched for the record(s) then deleted a record and got confirmation message i.e. Record has deleted. Next when I search for any record I'm getting below error.
Error
The search cannot be executed because the table has pending changes that would be lost.
Could you please help me to fix this issue. Your response is highly appreciated.
Item properties:
Item Style : Image
Action Type: Fire Action
Event : delete
Below is the code using in CO and AM
Controller (processFormRequest):
if ("delete".equals(pageContext.getParameter(EVENT_PARAM)))
// The user has clicked a "Delete" icon so we want to display a "Warning"
// dialog asking if she really wants to delete the employee. Note that we
// configure the dialog so that pressing the "Yes" button submits to
// this page so we can handle the action in this processFormRequest( ) method.
String visit_id = pageContext.getParameter("visit_id");
String employeeName = pageContext.getParameter("last_name") + ", " + pageContext.getParameter("first_name");
MessageToken[] tokens = { new MessageToken("EMP_NAME", employeeName)};
OAException mainMessage = new OAException("FND", "XXXX_EMP_DELETE_WARN", tokens);
// Note that even though we're going to make our Yes/No buttons submit a
// form, we still need some non-null value in the constructor's Yes/No
// URL parameters for the buttons to render, so we just pass empty
// Strings for this.
OADialogPage dialogPage = new OADialogPage(OAException.WARNING,
mainMessage, null, "", "");
// Always use Message Dictionary for any Strings you want to display.
String yes = pageContext.getMessage("AK", "FWK_TBX_T_YES", null);
String no = pageContext.getMessage("AK", "FWK_TBX_T_NO", null);
// We set this value so the code that handles this button press is
// descriptive.
dialogPage.setOkButtonItemName("DeleteYesButton");
// The following configures the Yes/No buttons to be submit buttons,
// and makes sure that we handle the form submit in the originating
// page (the "Employee" summary) so we can handle the "Yes"
// button selection in this controller.
dialogPage.setOkButtonToPost(true);
dialogPage.setNoButtonToPost(true);
dialogPage.setPostToCallingPage(true);
// Now set our Yes/No labels instead of the default OK/Cancel.
dialogPage.setOkButtonLabel(yes);
dialogPage.setNoButtonLabel(no);
// We need to keep hold of the employeeNumber and employeeName.
// The OADialogPage gives us a convenient means
// of doing this. Note that the use of the Hashtable is
// most appropriate for passing multiple parameters. See the OADialogPage
// javadoc for an alternative when dealing with a single parameter.
java.util.Hashtable formParams = new java.util.Hashtable(1);
formParams.put("visit_id", visit_id);
formParams.put("empName", employeeName);
dialogPage.setFormParameters(formParams);
pageContext.redirectToDialogPage(dialogPage);
else if (pageContext.getParameter("DeleteYesButton") != null)
// User has confirmed that she wants to delete this employee.
// Invoke a method on the AM to set the current row in the VO and
// call remove() on this row.
String employeeNumber = pageContext.getParameter("visit_id");
String employeeName = pageContext.getParameter("empName");
Serializable[] parameters = { employeeNumber };
// OAApplicationModule am = pageContext.getApplicationModule(webBean);
am.invokeMethod("deleteEmployee", parameters);
// Now, redisplay the page with a confirmation message at the top. Note
// that the deleteEmployee() method in the AM commits, and our code
// won't get this far if any exceptions are thrown.
MessageToken[] tokens = { new MessageToken("EMP_NAME", employeeName) };
OAException message = new OAException("FND",
"XXXX_EMP_DELETE_CONFIRM", tokens, OAException.CONFIRMATION, null);
pageContext.putDialogMessage(message);
Application Module:
public void deleteEmployee(String visit_id)
// First, we need to find the selected employee in our VO.
// When we find it, we call remove( ) on the row which in turn
// calls remove on the associated EmployeeEOImpl object.
int empToDelete = Integer.parseInt(visit_id);
OAViewObject vo = (OAViewObject)getNonEmployeesSummaryVO1();
NonEmployeesSummaryVORowImpl row = null;
// This tells us the number of rows that have been fetched in the
// row set, and will not pull additional rows in like some of the
// other "get count" methods.
int fetchedRowCount = vo.getFetchedRowCount();
// We use a separate iterator -- even though we could step through the
// rows without it -- because we don't want to affect row currency.
RowSetIterator deleteIter = vo.createRowSetIterator("deleteIter");
if (fetchedRowCount > 0)
deleteIter.setRangeStart(0);
deleteIter.setRangeSize(fetchedRowCount);
for (int i = 0; i < fetchedRowCount; i++)
row = (NonEmployeesSummaryVORowImpl)deleteIter.getRowAtRangeIndex(i);
// For performance reasons, we generate ViewRowImpls for all
// View Objects. When we need to obtain an attribute value,
// we use the named accessors instead of a generic String lookup.
// Number primaryKey = (Number)row.getAttribute("EmployeeId");
Number primaryKey = row.getVisitId();
if (primaryKey.compareTo(empToDelete) == 0)
// This performs the actual delete.
row.remove();
getTransaction().commit();
break; // only one possible selected row in this case
// Always close the iterator when you're done.
deleteIter.closeRowSetIterator();
} // end deleteEmployee
Thanks,
RaviHi
Check this link Getting error in search page search cannot be executed
Regards,
Dilip -
Bug Report: New conversation window stills the sys...
Bug Report: Skype Desktop: New conversation window stills the system/keyboard focus.
When the UI is in multi-window mode and a conversation window pops up (due for example to a newly received chat message), that window steals the system/keyboard focus, even though it appears in a minimized state in the Windows taskbar. And this should not happen by default, because it is impractical (especially for screen reader users). And it didn't happen in Skype 6.21 and earlier. But since the new UI was introduced officially in Skype 7.0, it started happening constantly.
Steps to reproduce it:
1. From "View" menu, activate the "Split Window View", if it is not already enabled.
2. From Tools -> Options -> IM & SMS -> IM settings, enable "Open a new window when I receive a new message in Split Window View", if it is not already enabled.
3. From Tools -> Options -> Advanced, activate "Enable accessible mode", if it is not already enabled.
4. Activate the "Save" button, to save the changes.
5. Close all windows, related to Skype. You may keep only the main window opened.
6. Move the system focus to another application.
7. Tell someone to send you a chat message. When the message arrives and the conversation window pops up minimized in the Windows Taskbar, everything seams to be as it should. A few seconds after that however, the system/keyboard focus gets moved to that new conversation window, even though it is neither restored/maximized (it is minimized), nor it is visible on the screen (except as a button in the taskbar).
Actual results:
When a new conversation window pops up in the Windows taskbar, it stills the system/keyboard focus to itself from the currently focused application.
Expected results:
Skype's popping up new conversation windows should not still the system/keyboard focus to themselfs from the currently focused application.
Test environment:
- Operating system: Windows 8.1 Pro N, 64-bit, in Bulgarian with all locale settings set to "Bulgarian".
- Skype version: 7.0.0.102 for Desktop.This is a known problem, but Skype have not given us an estimated time for a fix.
Traditionally, Skype updates have been roughly monthly, so we are due a new version sometime soon. Many of us here are hoping that is has a bunch of fixes for the UI, the focus problem being one of them.
Sean Ellis - uses Skype chat for serious work
Click here to read my blog post on Skype 7 and basic principles of GUI design -
I recieve the following error when trying to build and run a labview executable. I am able to build the executable but when trying to run the executable, a pop up window comes up asking the user to select a dll. (please see screen shot attached). Once the DLL is selected, I get the error that This VI is not Executable. The full development version of Labview is required to fix the errors. (please see screen shot attached). I have also attached a snapshot of the project window.
I have the professional development system
I can run the main VI
all the required DLL's are in the dependencies section of the project window.
I am trying to find the root cause of this error but to no avail. can anyone give me a clue to what i am missing here. Any suggestions on where i should look to find the problem ?
Thanks in advance to all labview users for your help
Attachments:
project window.PNG 36 KBother PNG
Attachments:
Broken Arrow on EXE.PNG 179 KB -
Front-end functions cannot be executed in the background in SM37
Hi ,
I have developed a BDC program for Tcode HRUSER . The program is working fine in Frontend but when Executed in Background through SM37 gives a error -:
"Front-end functions cannot be executed in the background".
I am not using any function like GUI_DOWNLOAD or anything like that .
Thanks
Nikhil Arya.Hi ,
No , the program is not taking any inputs from the user .
when i am executing the program in background mode it is just showing the messages at the end which i am writing in the program for eg:
"creating a user for employee 2306328".
So , only the list of messages comes at the end .
Thanks
Nikhil Arya. -
Install many executable on the same PC with different names
Hello,
I'm trying to install several executables with different names in the same computer but at the end of install process the message is : "an higher or existing version is already installed in this computer"
I create the Executable and Setup with LabVIEW Application Builder and install the executable in the same Program Files root directory with a different sub-directory for each executable as this : Program Files-->MyProject-->SubProjet1 with exe1/SubProject2 with exe2 etc...
My OS is WinXP pro SP2 and I work with LabVIEW 8.5.
Thanks and regards,
Armindo PINTOHi Armindo,
Thank you for using the NI forums!
From what I understand, you are trying to create multiple executables of a vi project to co-exist on the same PC. Any time you re-use the LabView 8.x project file, it will generate
install package with the same product ID number. That means, if the
deployed PC has the previous version installed, which had been
generated from the same project file, the new install package will
remove the previous version and overwrite it with the new version. Or as in your case, not allow you to install lower versions of the executable. That
means, the previous version will be no longer available on the deployed
PC. If you are creating an upgraded version to the product this is
fine.
However, if you need to re-use the LabView 8.x project
file and generate a new product, which can potentially co-exist with
the previous on the end user PC, you need to generate a new installer
with a different product ID number. One of the way to do it:
Copy existing project file (e.g. "name1.lvproj") under a different name (e.g. "name2.lvproj")
Open the new instance of the project
Expand the "Build Specifications"
Right click on the installer specification, e.g. "name1 Installer"
Select "Duplicate" from the menu
You can now delete the instance "name1 Installer" and rename the "Copy of name1 Installer" to a suitable name, e.g. "name2 Installer"
Make changes that are needed between the two versions, for example:
Select a new source VI
Build a new exe file
Reflect the new exe file in the "name2 Installer"
Make
any other changes needed in "name2 Installer", for example different
documentation files included in install, change in the target install
directories, changes in the start menu shortcuts. etc.
Build the install.
Please let me know if this solves the issue, and let me know how you get on.
Kind regards,
Ashish Naik
Field Sales Engineer
National Instruments UK
Maybe you are looking for
-
Gns is getting failed with error CRS-2632 during RAC installation
hello guys i am new to oracle RAC and i am trying to configure two node ORACLE 11G R2 RAC setup on OEL 5.4 using GNS Every things works great till I execute root.sh script on the first node It gives me error CRS-2674: Start of 'ora.gns' on 'host01' f
-
Automatic Batch creation for a material.
Hi Friends, we require automatic batch creation at the time of confirmation of process order for a particular material not for all the materials existing in the same plant and also not for all the materials existing in the same material type. we hav
-
wide/normal gamut? Fluorescent ccfl, White LED, RGB LED?
-
Hello everyone! I have recently zeroed the hard drives of my 13 networked computers in my art classroom, installed OS X 10.3.5 and Photoshop CS2, and reinstalled Illustrator 10. We have only been using Illustrator,and only for about 3 weeks. While mo
-
IPod won't sync after restore - now iTunes freezes up and iPod is empty
Two days ago my iPod started acting up - playing a song for about the first 10 seconds, then freezing up. I did the 5 R's - many, many resets, switching the USB port, reinstalling the software, and several restore attempts. The new and more pressing