# Java in script

**URL:** <https://forum.inductiveautomation.com/t/java-in-script/5173>\
**Category:** Ignition\
**Created:** [September 20, 2012, 5:41pm UTC](https://forum.inductiveautomation.com/t/java-in-script/5173 "2012-09-20T17:41:53Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![WildeKurt](https://avatars.discourse-cdn.com/v4/letter/w/50afbb/32.png) [@WildeKurt](https://forum.inductiveautomation.com/u/WildeKurt)\
**Post date:** [September 20, 2012, 5:41pm UTC](https://forum.inductiveautomation.com/t/java-in-script/5173/1 "2012-09-20T17:41:53Z")

</div>

I'm sure this is some simple thing but here goes: I'm trying to use the Java method keyPress(int) which is part of the Robot class. I keep getting the error:

> [@](#):
>
> TypeError: delay(): expected 2 args; got 1

In fact, I get this for every Java function I've tried. Here' s what I've got:

[code]def sendKeyScript(dataSet):  
# Sends the key strokes to the Reflections session....  
import system  
import system.dataset  
import system.db  
import system.util  
import system.gui

```
from java.lang import System
from java.awt import Robot
from java.awt.event import KeyEvent

system.util.execute(["C:\Program Files\Reflection\R8win.exe", "c:\createlabel.rsf"])
Robot.delay(3000)
Robot.keyPress(KeyEvent.VK_C, ret)
Robot.delay(500)

```

[/code]

---

<div class="post-metadata">

**Author:** ![James.Lorenz](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/james.lorenz/32/3290_2.png) [@James.Lorenz](https://forum.inductiveautomation.com/u/James.Lorenz)\
**Post date:** [September 20, 2012, 5:55pm UTC](https://forum.inductiveautomation.com/t/java-in-script/5173/2 "2012-09-20T17:55:52Z")

</div>

Try instantiating the Robot object first:

`rob = Robot()
rob.delay(3000)`

---

<div class="post-metadata">

**Author:** ![WildeKurt](https://avatars.discourse-cdn.com/v4/letter/w/50afbb/32.png) [@WildeKurt](https://forum.inductiveautomation.com/u/WildeKurt)\
**Post date:** [September 20, 2012, 6:42pm UTC](https://forum.inductiveautomation.com/t/java-in-script/5173/3 "2012-09-20T18:42:03Z")

</div>

That did it, thanks. Kind of a misleading error though.

---

<div class="post-metadata">

**Author:** ![James.Lorenz](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/james.lorenz/32/3290_2.png) [@James.Lorenz](https://forum.inductiveautomation.com/u/James.Lorenz)\
**Post date:** [September 20, 2012, 6:51pm UTC](https://forum.inductiveautomation.com/t/java-in-script/5173/4 "2012-09-20T18:51:36Z")

</div>

I think there is a static delay() method that has a different method signature than the void static() method, because if you try this it works:

`rob = Robot()
Robot.delay(rob,1000)`

Which is why the error complained about arguments.
