Scrollable cursor bug?

Hello,
When I first start my application from jdeveloper, I get this exception... Only once: when I do a "refresh", the application works normally and never gives the problem until the next server restart...
500 Internal Server Error
java.lang.NullPointerException     at java.lang.Class.forName0(Native Method)     at java.lang.Class.forName(Class.java:164)     at oracle.jdbc.driver.PhysicalConnection.safelyGetClassForName(PhysicalConnection.java:4583)     at oracle.jdbc.driver.PhysicalConnection.addClassMapEntry(PhysicalConnection.java:2737)     at oracle.jdbc.driver.PhysicalConnection.addDefaultClassMapEntriesTo(PhysicalConnection.java:2728)     at oracle.jdbc.driver.PhysicalConnection.initializeClassMap(PhysicalConnection.java:2456)     at oracle.jdbc.driver.PhysicalConnection.ensureClassMapExists(PhysicalConnection.java:2450)     at oracle.jdbc.driver.PhysicalConnection.getTypeMap(PhysicalConnection.java:2714)     at oracle.jdbc.driver.ScrollableResultSet.getObject(ScrollableResultSet.java:742)     at oracle.toplink.oraclespecific.Oracle9Platform.getObjectFromResultSet(Oracle9Platform.java:152)     at oracle.toplink.internal.databaseaccess.DatabaseAccessor.getObject(DatabaseAccessor.java:963)     at oracle.toplink.internal.databaseaccess.DatabaseAccessor.fetchRow(DatabaseAccessor.java:771)     at oracle.toplink.internal.databaseaccess.DatabaseAccessor.cursorRetrieveNextRow(DatabaseAccessor.java:352)     at oracle.toplink.queryframework.ScrollableCursor.retrieveNextObject(ScrollableCursor.java:512)     at oracle.toplink.queryframework.ScrollableCursor.loadNext(ScrollableCursor.java:357)     at oracle.toplink.queryframework.ScrollableCursor.hasNext(ScrollableCursor.java:233)     at be.uclouvain.doctorats.dao.factories.GenericFactory.searchAll(GenericFactory.java:198)     at be.uclouvain.doctorats.business.GenericBusiness.searchAll(GenericBusiness.java:188)     at be.uclouvain.doctorats.business.GenericBusiness.searchAllFromParent(GenericBusiness.java:393)     at be.uclouvain.doctorats.business.utils.Interlocutor.listObjects(Interlocutor.java:194)     at be.uclouvain.doctorats.action.ListAction.doAction(ListAction.java:55)     at be.uclouvain.doctorats.action.BasicAction.execute(BasicAction.java:46)     at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:484)     at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:274)     at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1482)     at org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:507)     at javax.servlet.http.HttpServlet.service(HttpServlet.java:743)     at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)     at com.evermind[Oracle Containers for J2EE 10g (10.1.3.1.0) ].server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:711)     at com.evermind[Oracle Containers for J2EE 10g (10.1.3.1.0) ].server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:368)     at com.evermind[Oracle Containers for J2EE 10g (10.1.3.1.0) ].server.http.HttpRequestHandler.doProcessRequest(HttpRequestHandler.java:866)     at com.evermind[Oracle Containers for J2EE 10g (10.1.3.1.0) ].server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:448)     at com.evermind[Oracle Containers for J2EE 10g (10.1.3.1.0) ].server.http.HttpRequestHandler.serveOneRequest(HttpRequestHandler.java:216)     at com.evermind[Oracle Containers for J2EE 10g (10.1.3.1.0) ].server.http.HttpRequestHandler.run(HttpRequestHandler.java:117)     at com.evermind[Oracle Containers for J2EE 10g (10.1.3.1.0) ].server.http.HttpRequestHandler.run(HttpRequestHandler.java:110)     at oracle.oc4j.network.ServerSocketReadHandler$SafeRunnable.run(ServerSocketReadHandler.java:260)     at com.evermind[Oracle Containers for J2EE 10g (10.1.3.1.0) ].util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:303)     at java.lang.Thread.run(Thread.java:595)
Here is the code that seems to cause the problem:
ReadAllQuery readQuery = new ReadAllQuery(modelClass);
List<ModelObject> toplinkResults = new ArrayList<ModelObject>();
int chunkSize = 50;
int index = 0;
if (search != null) {
readQuery.setSelectionCriteria(search.getExpression());
chunkSize = search.getPageSize();
index = search.getIndex();
readQuery.useScrollableCursor(chunkSize);
// lecture
ScrollableCursor cursor = (ScrollableCursor)ToplinkFactory.getSession().executeQuery(readQuery);
if (cursor == null) {
throw new Exception("No cursor!");
if (index > 0) {
cursor.absolute(index);
int size = cursor.size();
int displaySize = chunkSize;
// ajuster si page de données n'a pas sa taile max
if (index + displaySize > size) {
displaySize = size - index;
for (int i=0; i < displaySize; i++) {
if (!cursor.hasNext()) {
throw new Exception("Cursor doesn't seem to work properly!");
toplinkResults.add((ModelObject)cursor.next());
I traced the problem to this line:
if (!cursor.hasNext()) {
It looks like a bug to me... Am I doing something wrong, or is it Toplink, or even jdbc???

Ok, it seems to be only there when I run my
application in debug mode in Jdeveloper... When
running it regularly, it works correctly. Is it a
jdev/oc4j bug, or is it a toplink bug which is
triggered in some rare situation, or is it something
else?Thats what you will have to debug further. :-)
When you wrote "running it regularly" did you mean running it through JUnit?
It could be the way you package/load classes in your JDeveloper environment. In order to eliminate the possibility of Toplink causing the bug you could write an identical test case in the app server except you can use JDBC ResultSet.

Similar Messages

  • Scrollable Cursor in Stored Procedure

    I am trying to implement a scrollable cursor that exists in a stored procedure. Here is my situation:
    o Oracle 9i (9.2.0.1.0) for both client and server.
    o OCI Interface in purely C++ environment
    o I am able to compile/link program with 9i client library, and successfully fetch data from a stored proc that contains a nonscrollable/forward only/traditional cursor without any problems.
    I have a stored proc that looks like this:
    procedure test(
    testcursor out cv_types.cv_fit_data
    ) as
    begin
    open testcursor
    for select data_id,
    text
    from data;
    end test;
    This is where I run into problems:
    First I allocate an OCIStmt handle and bind it to the proc. Then using the stmt handle that points to the proc, I bind a secondary handle that points to the cursor (testcursor above) by calling OCIBindByPos with type=SQLT_REF (See OCI ref manual on binding ref cursor). Next, I execute the proc via OCIStmtExecute with the mode=OCI_STMT_SCROLLABLE_READONLY using the statement handle that points to the procedure. Then I use that secondary stmt handle to fetch the rows via OCIStmtFetch2(). I am able to fetch the rows if I stick to OCI_FETCH_NEXT, but when I attempt to use any scrollable features such as OCI_FETCH_ABSOLUTE, it bails with an ORA-24391 error. Upon further investigation, I found out that this error occurs when the stmt is not executed with mode=OCI_STMT_SCROLLABLE_READONLY. The clincher is that I did execute in that mode... Has anyone been faced with a similar situation? Am I tackling this the wrong way? Any help, even pointers to any docs I missed on the subject, is greatly appreciated.
    Thanks,
    Bryan
    I am using OCI in C++ to fetch the data via OCIStmtFetch2(...) method.

    vaidyanathanraja wrote:
    4. If there is a logical error, the same procedure should not generate data when it is rerun. Behaviour should be the same at all times.Incorrect. Something like NLS settings for example can make the same code, behave differently. E.g. a date string is passed and implicitly converted to a date. And this will work for most dates from different session using different NLS settings (e.g. yyyy/mm/dd versus yyyy/dd/mm). And these sessions will provide different results using the same parameters calling the same application code.
    There are a number of such run-time factors that influences code.
    5. Failed means it didn't generate the expected output. Which means that there is a problem with that SQL being executed the way it is, with the parameters used. You need to isolate the problem further.
    6. Parameter values are right.Have you proved that by using a test case that runs the very same SQL via a test proc, using the same parameter, via a job? Ran that test case interactively via sqlplus?
    You need to pop the hood and isolate the problem.
    7. I came across one blog saying different behaviour for REF CURSOR between oracle 10g and 11g and he says it is oracle bug. I don't know whether it is applicable for this case also.Bahumbug. There are many Oracle bugs. As there is in all software. However, you have not provided any evidence of a bug.
    Application code is behaving inconsistently. That is the symptom. Oracle system code is not relevant until you can prove that the inconsistency is not in the application code, but lower down the call stack.

  • Problem with scrollable cursors

    Hello,
    When I try to make a cursor scrollable by using SQLSetStmtAttr with parameters SQL_ATTR_CURSOR_SCROLLABLE and SQL_SCROLLABLE I get the error "[Oracle][ODBC]Optional feature not implemented".
    I have tried it with different types of cursors (Static, Keyset Driven, Dynamic). Isolation level is READ COMMITTED (default). I use ODBC Oracle Driver 11.1.
    What am I doing wrong?

    Can you pls check this link
    How do I get scrollable cursors with instant client unixODBC driver?

  • FOR UPDATE on scrollable cursor and error: ORA-00907: missing right parenthesis

    If change my query to have a FOR UPDATE and make it an updatable scrollable cursor I get an error on the updateRow() command saying "ORA-00907: missing right parenthesis"
    If I remove the FOR UPDATE it works OK.
    The problem I have is trying to update a CLOB from a ResultSet. If I do not upate any other column I get the error saying that the error"
    "ORA-22920: row containing the LOB value is not locked"
    I can get around this by adding FOR UPDATE. But if I add FOR UPDATE and try to update any non-CLOB column I get the 00907 error above.
    Hmmmm. So here is what I can and cannot do:
    - I CAN update the CLOB IF I update another column 1st and NO FOR UPDATE clause.
    - I CAN update the CLOB only if I have FOR UPDATE clause.
    - I CANNOT update just the CLOB without FOR UPDATE.
    - I CANNOT update any non-CLOB column with FOR UPDATE.
    What a pain in the ***! How am I to provide generic access to the applications being built on my DB layer. This is crazy!

    <BLOCKQUOTE><font size="1" face="Verdana, Arial">quote:</font><HR>Originally posted by Andrew Edgar ([email protected]):
    I have this same problem!
    The error occurs when performing updateRow.
    The turning off of auto commit only gets the query to work but not the actual update.
    Will this be fixed in the next version of the Driver?<HR></BLOCKQUOTE>
    Here is the stack Trace I recieved:
    java.sql.SQLException: ORA-00907: missing right parenthesis
    at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:168)
    at oracle.jdbc.ttc7.TTIoer.processError(TTIoer.java:208)
    at oracle.jdbc.ttc7.Oall7.receive(Oall7.java:543)
    at oracle.jdbc.ttc7.TTC7Protocol.doOall7(TTC7Protocol.java:1405)
    at oracle.jdbc.ttc7.TTC7Protocol.parseExecuteFetch(TTC7Protocol.java:822)
    at oracle.jdbc.driver.OracleStatement.executeNonQuery(OracleStatement.java:1446)
    at oracle.jdbc.driver.OracleStatement.doExecuteOther(OracleStatement.java:1371)
    at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1900)
    at oracle.jdbc.driver.OraclePreparedStatement.executeUpdate(OraclePreparedStatement.java:363)
    at oracle.jdbc.driver.UpdatableResultSet.execute_updateRow(UpdatableResultSet.java:2135)
    at oracle.jdbc.driver.UpdatableResultSet.updateRow(UpdatableResultSet.java:1322)

  • Scrollable Cursor lockup

    Hi,
    I'm using scrollable cursors to page a large result set. When two identical queries are issued in two separate threads, the application stops responding.
    On examining the code I find that the lockup occurs in the scrollable result set code, in particular, the ScrollableCursor::next(int number) method.
    Has anyone seen this, or have a suggestion on a different approach for solving this problem? Am I doing something obviously wrong? I've tried using the scrollable policy shown below, as well as the default one.
    I'm using classes12.zip.
    The code for the query is as follows:
              ReadAllQuery readAllQuery = readAllQueryForClass(targetClass);
              readAllQuery.setSelectionCriteria(whereExpression);
              readAllQuery.useScrollableCursor();
              ScrollableCursorPolicy scrollableCursorPolicy = (ScrollableCursorPolicy) readAllQuery.getContainerPolicy();
              scrollableCursorPolicy.setResultSetConcurrency(ScrollableCursorPolicy.CONCUR_READ_ONLY);
              scrollableCursorPolicy.setResultSetType(ScrollableCursorPolicy.TYPE_SCROLL_INSENSITIVE);
              readAllQuery.addOrdering(sortedByExpression);
              ScrollableCursor scrollableCursor =
                   (ScrollableCursor) this.acquireUnitOfWork().executeQuery(readAllQuery);
    The next is as follows:
    scrollableCursor.next(intValue);
    Thanks in advance
    - ted

    Look in the concepts for definition
    http://download-uk.oracle.com/docs/cd/B19306_01/server.102/b14220/sqlplsql.htm#sthref3449
    They are however supported currently only in OCI and recent JDBC afaik, not in PL SQL ( however can be simulated by means of collections).
    Best regards
    Maxim

  • Scrollable cursors

    Hello
    I'm trying to explain why ansi style scrollable cursors are missing from Oracle to a group of people who are used to working with SQL server etc. Their position is that it's a pain in the backside to write a paging service into their application that will need to issue(taken from asktom)
    select *
      from ( select a.*, rownum rnum
               from ( YOUR_QUERY_GOES_HERE -- including the order by ) a
              where rownum <= MAX_ROWS )
    where rnum >= MIN_ROWSAs I understand, SQL server etc offer server side cached scrollable cursors but oracle does not. As I have seen so far, there is normally a very good reason why Oracle not to support a particular feature so in this case, does anyone know what it is?
    Cheers
    David

    Andrew,
    I've not been able to get a difinitive answer on whether JDBC supports the MS style scrollable cursors or not but from the discussion I had with a SQL server dba, he said that you could only specify the attributes of a cursor in TSQL. The more I thought about what our java guy was talking about and the inteded design of the system, the more I realised that he didn't really understand what he was asking. They are intending to use hibernate, which will generate SQL statements for basic crud operations and and wrap them in a set of java classes. They are not intending to use stored procs/ref cursors for anything so there is no way they could use the type of cursor he is on about (on SQL server or Oracle if it provided them)...or any declared type of cursor for that matter., they are just receiving result sets from straight sql statements.
    3360
    I have to agree with you whole heartedly. I've been on this contract for 5 weeks and so far I've produced one script to produce one table. The port is from a cobol system...The main idea is to treat the database as...you guessed it...a black box so that the application can be simply[i] put on any chosen database platform without batting an eyelid, and we retain all the "advantages" of platform independence.
    Anyway, with very little else to do all day I'll continue to look for other work while keeping an eye on the forums and reading some very interestiong articles on ask tom. Sorry for the little rant, but I am going slowy insane ;-)
    David

  • Scrollable Cursor Vs Cursored Stream

    While working with streams in Toplink, are there any general guidelines? I mean the scenarios in which Cursored stream is beneficial and the scenarios in which Scrollable cursor is beneficial.
    From the outset it appears to me that Scrollable cursor is a better option, because i see that Cursored Stream always generates an additional count(*) query when i retrieve the total size of the cursor and because of this takes more time as compared to a Scroallable cursor.
    Thanks in advance for any information on this.

    The cursored stream must use a separate query to figure out its size. The scrollable cursor can simply scroll to the end and then scroll back. Scrolling to the end and then back is typically less efficient then a separate count(*) query.
    Doug

  • Oracle JDBC 8.1.6/Scrollable Cursor

    When using scrollable cursor on a table with varchar, getString() and getFloat() works but getObject() does not work. Why?

    Hi Ken,
    we have the same problem. getObject returns NULL on scrollable / updatable cursor while getString works. Using an ordinary statement (i.e. not JDBC2.0) both methods are working. We need the updatable cursor so if there will be no solution in time we have to switch back to an other database...
    Hopefully some one from Oracle will respond.
    Cheers.
    null

  • Scrollable cursors in oracle 8.1.7

    We are devloping application which is using VB as a front-end and SQL Server 2000 & Oracle 8.1.7 as back-end. I have created the procedure in SQL Server 2000 in which we have made an extensive use of scrollable cursors. But now i want to create such procedure in oracle 8.1.7, But i am not getting any help regarding scrollable cursors in oracle 8.1.7. So can anyone tell me is there any scrollable attribute defined in oracle 8.1.7 so that the previous or next record can be retreived.
    Thanks in Advance !

    For further reading:
    http://asktom.oracle.com/pls/ask/f?p=4950:8:::::F4950_P8_DISPLAYID:1180618018840#3260280102622
    http://asktom.oracle.com/pls/ask/f?p=4950:8:::::F4950_P8_DISPLAYID:127412348064#6969336986834
    http://asktom.oracle.com/pls/ask/f?p=4950:8:::::F4950_P8_DISPLAYID:311216724461#31102007054659

  • Scrollable cursor

    whats the meaning of scrollable cursor when we use this cursor?

    Look in the concepts for definition
    http://download-uk.oracle.com/docs/cd/B19306_01/server.102/b14220/sqlplsql.htm#sthref3449
    They are however supported currently only in OCI and recent JDBC afaik, not in PL SQL ( however can be simulated by means of collections).
    Best regards
    Maxim

  • CS5.5 TLF cursor bug in RTL edit mode

    Hello,
    It seems there is a bug in TLF text in CS5.5 in "editable" mode.
    to reproduce:
    1.put a TLF on stage and set it to "editable".
    2. Set in 'Paragrph' section to 'Right To Left'.
    It remainsleft to right.
    3. set in 'Container and flow' to 'Right To Left' it does change direction, but if you try to put a cursor you can't.
    The only way to put a cursor is on the right of the TLF.
    Ideas anyone ?

    I have problem with this issue too. and it has started with flash cs5.5. in flash cs5 TLFs work fine.
    It is not a solution, but by chance I have found when the MultiLine property of TLF is changed to single line textfield works fine. again I confirm the bug and wish the team make a update for that.

  • GVim 7.2.368-3 cursor bug

    Hi all. After I upgraded to the latest version of Vim a couple of days ago, I started experiencing what looks like gVim cursor redraw bug. When I move the cursor in gVim, it obstructs the letter it is on:
    I do not experience this in plain Vim. There are things that can make the cursor exhibit normal behavior, such as 1) me pressing Esc key 2) Awesome WM clock updating 3) scrot taking a screenshot (I had to Gimp the screenshot above because the cursor goes back to normal the moment a screenshot is taken).
    Vim and Xorg packages were upgraded during my last update, but Awesome WM was not.
    Is anybody else experiencing this? How should I go about finding the culprit?

    jichuan89 wrote:
    I am getting the same bug here. However, it only seems to occur when I use bitmap fonts like Dina or Terminus. Using a TrueType font like Courier New or Nimbus Mono works perfectly. Confused
    This seems to be a bug specific to the intel driver for X11. When I reboot the machine and switch to my discrete ATI graphics card (my laptop has dual integrated/discrete graphics cards) the problem disappears completely. Also forwarding Vim through SSH from this laptop to other computers works as well. Could you confirm this? What X11 video driver are you using?
    Thank you for pointing this out. I have changed the font and now the cursor works again. Hope this bug will be fixed soon. I am missing my dina fonts.
    Last edited by ArchArael (2010-03-16 08:16:24)

  • Cursor bug in PS, AI and FL

    I'm noticing a bug across Photoshop, Illustrator and Flash. I'm on a Mac Pro quad-core 2.8 Ghz with 4 GB of RAM. I'll be in one of these three apps for a while, and suddenly the cursor turns into an approx. 4 mm open circle which functions as a temporary eraser for whatever is on the screen. All other program functions stop. Restarting the app does not solve the issue. Restarting the machine does solve the issue. I've restarted three times today. I'm wondering if there is a fix out there for this issue. Thanks in advance for the help.
    --jody radzik.

    Hi! Same bug here! All of the sudden while I'm working with AI CS6 the cursor -or whatever is the tool in use- it just switches to the eraser tool. Sometimes I'm able to switch again to some other tool by performing some random mouse gestures and clicking everywhere, but I'm pretty often pushed to restart the application in order to take the reins again.
    What to do? Anyone? Something different to reinstalling the whole suite? Thanks in advance.-
    [This is not really a reply but this is my first post here and I could not be able to add my experience to the same thread

  • Photoshop CS4 brush cursor bug on Thinkpad T61p

    I've got a Thinkpad T61p with a Nvidia Quadro FX 570M onboard (driver version: 6.14.11.7471). There seems to be a bug with the graphics driver in conjunction with the new Adobe Photoshop CS4. Photoshop now uses GPU-optimization with more brush capabilities. Unfortunately the cursor clips when using brush-sizes larger than 64px. One can see the bug on the nvidia cs4 promotion "brush resizing" at http://www.nvidia.com/object/adobe_photoshop.html. Nvidia corrects this bug in newer driver versions, but lenovo only offers a WinXP-display-driver from 2008-04-28.
    Does anyone know any workround? I've tested somo older forceware drivers (178.24) with partial success. The display bug in Photoshop is fixed, but e.g. After Effects CS4 crashes while detecting the GPU.
    Message Edited by mikey on 10-23-2008 03:20 AM

    Today I've installed the latest Forceware Drivers 180.60 from http://www.laptopvideo2go.com/ to test the bug behaviour.
    The brush cursor now seems to be able to handle big brush sizes but the performance is reduced noticable.When painting inside a new document the rendering of the brush path is done after painting over the area, even when using small brush sizes.
    So let's wait until Nvidia/Lenovo roll out a new driver.
    Message Edited by mikey on 11-24-2008 07:57 AM

  • Scrollable Frames bugs

    Hi,
    I got some errors with drop 19 while creating my first magazine....
    1. Horizontal slider, placed on the left side. On the right side is an image with a contour and a textflow (nor sure whats the name for that n english...). If you scroll the text horizontally to the left, the textflow is as if the image is placed in the text. The issue is, that theres a bug with the overlay and placed mages on top of it, it thinks it is placed within the scrollable text
    2. You cannot leave a page without a button when the scrollable text area is too big. I think at the end of the srollable text the page should flip. Users might be confused if nothing happens. This must be fixed soon. As i have a single license and a tight time frame, i cannot fix it later (without paying for it again..). Drop 19 is nearly useless with.scrollable frames, i read a couple of ther reports naming that issue...
    Hope to get some jelpfull answers. In my opninion, the whole dps is in early beta. I started using it with drop 9, the handling is better now, but some fetures are still missing...
    Kind regards
    Simon

    Another issue: scrollable text withn a scrollable text is working, but only if the scrolling frame is visible. If it is not visible on lage load, the font site s reduced and not scrolling, it is repeatsble, i can provide indd files if required

Maybe you are looking for

  • How to get ML dictation involving multiple languages.

    Hello all I just upgraded my MBPearly2011 from Snow Leopard to Mountain Lion yesterday. With the upgrade, I found that I can now type by talking (probably nothing new to you guys I suppose). I use Japanese as the main language on this computer, but a

  • H:message and method result

    Hi all, I've got an input text and a button which send an email to the adress entered by the user... <h:inputText id="email" size="20" required="true" binding="#{MyBean.email}"> <t:validateEmail /> </h:inputText> <h:message for="email" styleClass="er

  • [solved] ssh into autostarted xfce4 session

    I have two remote machines running Arch. They have identical sshd_config, .bashrc and .bash_profile files. $ cat .bashrc [[ $- != *i* ]] && return alias ls='ls --color=auto' PS1='[\u@\h \W]\$ ' $ cat .bash_profile [[ -f ~/.bashrc ]] && . ~/.bashrc if

  • Transferring data from one phone to another

    I have a Nokia 6101 with a O2 pay as you go sim in it, I can't find where to change over all info onto my sim card.  I want to put the sim & info into my Nokia 2720fold to use as my English phone, ( I live in Spain ) Don't make the answer to difficul

  • Not all the master data values appear in variable dropdown

    Hi all, we have a BPS variable in planning folder (SEM 4.0) where we have defined a variable with 'restriction required by user'. When the uses take a drop down they don't see all the values in the dropdwon but they can still manually input the missi