One option is to use Jetspeed legacy messaging, but that's gone away with JSR-168.
Another way is to have the 'second' portlet read some data placed in a shared session. Portlets in the same portlet app can potentially share their session space, but if the two portlets are in different wars, you're out of luck.
WebSphere provides a C2A or Click-to-Action technology which is slick, but I don't know how 'standard' that is. If you're using WebSphere Portal, I could probably help you out with Click-2-Action.
Another option might be to use a Struts portlet type of domain, which helps you to create multi-pate portlet applciations.
The big point is that you don't really call one portlet from another portlet. The portal page is supposed to be an aggregation of data, and sometimes designing portal applications requires you to bend your thinking in a way you just might not be used to.
I don't know if I'd describe it as 'calling a portlet from another portlet', but I'd say that using C2A is a pretty slick mechanism. Click to Action is more of a messaging mechanism, that allows one portlet to send content or text to another portlet.
Another mechanism might be using the Struts portlet framework if you are trying to create a wizard type appliations.
For my next feat, I will require a volunteer from the audience! Perhaps this tiny ad?
professionally read, modify and write PDF files from Java