ObjectStream communication between servlet and rich client
Hi,
I need to send multiple objects from a servlet to a rich client.
Is it possible to send 2 objects of different types at the same time - ie, a hashtable and a custom object by writing them one after another into the response's ObjectOutputStream?
Also, if I have two vectors containing different object types, say a Vector of Strings and a Vector of custom objects, how do I read the ObjectStream at the client end to get these two objects? Do I read two Vectors from the ObjectInputStream and then check the contained object using instanceOf?
In the above scenarios, is it better to wrap the entire set of objects with a serialized wrapper class and send that single object from the server to the client?
Please advice. Thanks in advance!
You can send any number of objects in a stream one after other. If they are in different types/classes then you have to be carefull when casting to the specific types at the other end becouse if you try to cast to wrong type you get a runtime exception.
Normally when you receive the objects you will know in advande (programming time) which vector comes first in the stream so you can treat them acordingly.
Since both of them are vectors you can cast them to vector references at the read end and can tread the elements of the first vectors as strings and the elements of the other vectors as something else provided that the client always send the string vector first.
Whether to make it a single object or ot is a design decision that you have to make. It it make sence to put those two vectors together(logically related) then its better to do so.
Similar Messages
-
Diff between Thin client and Rich client
Hi Everyone,
Can someone give me a clear picture of the what is the diff between Thin client and Rich client.
Thanks,
KrishnaHi,
thick client (rich client) has/stores all the data inside itself
so it can do application processing without the server with data
thin client uses resources from host computer (from server)
and wihtout that you are not able to work with that kind of client
does that answer your question ?
Regards,
michal -
Is in PI7.1 possible asynchronous communication between SOAP and ABAPProxy?
Hi,
when method execute_asynchronous has disapeared since XI/PI 7.1, is
there still way how to use ABAP proxy in asynchronous way?
We need to build asynchronous connection SOAP->PI->ABAP_Proxy.
In PI, both interfaces are defined as asynchronous (outbound for SOAP and
inbound for ABAP Proxy).
Despite of this fact, when message is sent, it is processed
synchronous way.
I have set breakpoint in my implementation of method for ABAP Proxy
message processing. When message is sent and breakpoint is reached,
whole connection stays open (between SOAP and PI and between PI and
ABAP Proxy) and waits for processing method (the breakpointed one) to
return. Only when processing method returns, is connection finelly
closed.
If i understand it correctly, this is synchronous behavior. In
asynchronous behavior, as i understand it, should be connection
between PI and ABAP Proxy of application server closed immediately
after message has been delivered. This mean before my processing
method is even called.
The same could be said about SOAP and PI communication. Connection
should be closed immediately after PI has received message. From
definition of asynchronous communication of PI is obvious, that PI
should receive message correctly and close connection to sender system
even when receiver is unreachable. It should deliver message later
when, receiver system is back on line. So why it keeps connection to
sender system open while it waits for receiver?
Why is this happening, when both interfaces are defined as
asynchronous? Could be the reason for this, if APPLICATION
ACKNOWLEDGEMENT is set on by default? If so, how can i change it
to SYSTEM ACKNOWLEDGEMENT, or disable it at all?
Or is this kind of asynchronous communication even possible since
XI/PI 7.1 ?
Processing of message we are sending can take some time, so we dont
want connection pending open while waiting for finish of
processing. Thats the reason why we have chose asynchronous model to
use.Quote from How to Use the J2EE SOAP Adapter:
"If you select Best Effort, the Web service client will receive a response
message in the SOAP body. Otherwise, the Web service client will not receive a
response message if no error occurs."
"if no error occurs" - that is the problem. In either case he still
waits if some error occure or not. I dont want it. Once PI has
received message, I want the connection with sender to be closed. If
there will be error in communication between PI and reciever, I want
to see it only in PI log. That mean no notification to sender to be
send about that error.
Is that possible? -
Communication between : AP and WLAN controller
Hi,
The communication between AP and WLAN Controller is ( Data and Control ) UDP.
Source port 1024 and destination port 12222 and 12223. Actually which device listen to which port or both should listen as control and data can be generated from both the devices.
How does the user ( wireless client) traffic is switched - if user traffic is a TCP traffic. It will be sent to WLANC and then WLANC forwards it to respective VLAN or default gateway ( depending upon the destination in the packet ).
Please explain / share the experience.
any link on cisco.com
Thanka in advance
Subodh"the LWAPP Control and Data messages are encapsulated in UDP packets that are carried over the IP network. The only requirement is established IP connectivity between the access points and the WLC. The LWAPP tunnel uses the access point's IP address and the WLC's AP Manager interface IP address as endpoints. The AP Manager interface is explained in further detail in the
implementation section. On the access point side, both LWAPP Control and Data messages use an ephemeral port that is derived from a hash of the access point MAC address as the UDP port. On the WLC side, LWAPP Data messages always use UDP port 12222. On the WLC side, LWAPP Control messages always use UDP port 12223.
The mechanics and sequencing of Layer 3 LWAPP are similar to Layer 2 LWAPP except that the packets are carried in UDP packets instead of being encapsulated in Ethernet frames."
Taken from "Cisco 440X Series Wireless LAN Controllers Deployment Guide" -
Communication between SAP and 3rd Party Systems using IDOC HTTP XML Interfa
Hi
i am try do
Communication between SAP and 3rd Party Systems using IDOC HTTP XML Interface
With The help of SDN Contribution
link----
( have look on it)
https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/library/uuid/4943f2b7-0a01-0010-37af-faff35b2f08c
I am getting error in
Partner system as HTTPLOG and "Execute" to check the results
Error is -- Port could not be created
RFC destination HTTPLOG Not specified for system HTTPLOG
any 1 have any idea if plzzzzzzzz...........
Thank u
RamHello .
we are also in process of implementing the same
could you share the knowledge pl?
1)is it a separate add on with ALE to saphr
or using ECC ??
2)can u share the configuration part ??
we are trying it on webas as addon 3.0 . -
Error during VM container communication between ABAP and JAVA
Hello,
While creation of SC, I am getting error "Error during VM container communication between ABAP and JAVA"
Based on earlier responses in this forum, I checked following activity.
1. T Code - BBP_CND_CHECK_CUST
Result - IPC Pricing is Active and IPC is now running in VMC
2. Run Report - RSVMCRT_HEALTH_CHECK
Result - The Java component is deactivated
3. As per OSS note 854170, Profile parameters were existed as below
a) vmcj/enable - on
b) vmcj/option/maxJavaHeap = 200M
So, How to get Java component activated?
Thanks,
Rahul MandaleThanks Markus,
For SM53, I am getting resulets as " Java is not active on this application server - Message no. SVMCRT011"
Can you suggest, what I need to do for it? I can't use SRM Shopping cart because of it. thanks in advance, Rahul
and dev_w0 trace ....
trc file: "dev_w0", trc level: 1, release: "700"
ACTIVE TRACE LEVEL 1
ACTIVE TRACE COMPONENTS all, MJ
B
B Wed Aug 31 15:45:40 2011
B create_con (con_name=R/3)
B Loading DB library 'D:\usr\sap\CUS\DVEBMGS04\exe\dboraslib.dll' ...
B Library 'D:\usr\sap\CUS\DVEBMGS04\exe\dboraslib.dll' loaded
B Version of 'D:\usr\sap\CUS\DVEBMGS04\exe\dboraslib.dll' is "700.08", patchlevel (0.46)
B New connection 0 created
M sysno 04
M sid CUS
M systemid 560 (PC with Windows NT)
M relno 7000
M patchlevel 0
M patchno 52
M intno 20050900
M make: multithreaded, Unicode, optimized
M pid 456
M
M kernel runs with dp version 210000(ext=109000) (@(#) DPLIB-INT-VERSION-210000-UC)
M length of sys_adm_ext is 572 bytes
M ***LOG Q0Q=> tskh_init, WPStart (Workproc 0 456) [dpxxdisp.c 1293]
I MtxInit: 30000 0 0
M DpSysAdmExtCreate: ABAP is active
M DpSysAdmExtCreate: VMC (JAVA VM in WP) is not active
M DpShMCreate: sizeof(wp_adm) 18304 (1408)
M DpShMCreate: sizeof(tm_adm) 3954072 (19672)
M DpShMCreate: sizeof(wp_ca_adm) 24000 (80)
M DpShMCreate: sizeof(appc_ca_adm) 8000 (80)
M DpCommTableSize: max/headSize/ftSize/tableSize=500/8/528056/528064
M DpShMCreate: sizeof(comm_adm) 528064 (1048)
M DpFileTableSize: max/headSize/ftSize/tableSize=0/0/0/0
M DpShMCreate: sizeof(file_adm) 0 (72)
M DpShMCreate: sizeof(vmc_adm) 0 (1452)
M DpShMCreate: sizeof(wall_adm) (38456/34360/64/184)
M DpShMCreate: sizeof(gw_adm) 48
M DpShMCreate: SHM_DP_ADM_KEY (addr: 05C00040, size: 4613144)
M DpShMCreate: allocated sys_adm at 05C00040
M DpShMCreate: allocated wp_adm at 05C01E28
M DpShMCreate: allocated tm_adm_list at 05C065A8
M DpShMCreate: allocated tm_adm at 05C065D8
M DpShMCreate: allocated wp_ca_adm at 05FCBB70
M DpShMCreate: allocated appc_ca_adm at 05FD1930
M DpShMCreate: allocated comm_adm at 05FD3870
M DpShMCreate: system runs without file table
M DpShMCreate: allocated vmc_adm_list at 06054730
M DpShMCreate: allocated gw_adm at 06054770
M DpShMCreate: system runs without vmc_adm
M DpShMCreate: allocated ca_info at 060547A0
M DpShMCreate: allocated wall_adm at 060547A8
X EmInit: MmSetImplementation( 2 ).
X MM diagnostic options set: 0
X <ES> client 0 initializing ....
X Using implementation flat
M <EsNT> Memory Reset disabled as NT default
X ES initialized.
M
M Wed Aug 31 15:45:41 2011
M ThInit: running on host crmsys
M
M Wed Aug 31 15:45:42 2011
M calling db_connect ...
C Prepending D:\usr\sap\CUS\DVEBMGS04\exe to Path.
C
C Wed Aug 31 15:45:47 2011
C Client NLS settings: AMERICAN_AMERICA.UTF8
C Logon as OPS$-user to get SAPSR3's password
C Connecting as /@CRM on connection 0 (nls_hdl 0) ... (dbsl 700 240106)
C Nls CharacterSet NationalCharSet C EnvHp ErrHp ErrHpBatch
C 0 UTF8 1 0619F158 061A46F4 061A3F7C
C Attaching to DB Server CRM (con_hdl=0,svchp=061A3EC8,svrhp=061B5794)
C Starting user session (con_hdl=0,svchp=061A3EC8,srvhp=061B5794,usrhp=061CA558)
C
C Wed Aug 31 15:45:48 2011
C Now '/@CRM' is connected (con_hdl 0, nls_hdl 0).
C Got SAPSR3's password from OPS$-user
C Disconnecting from connection 0 ...
C Closing user session (con_hdl=0,svchp=061A3EC8,usrhp=061CA558)
C Now I'm disconnected from ORACLE
C Connecting as SAPSR3/<pwd>@CRM on connection 0 (nls_hdl 0) ... (dbsl 700 240106)
C Nls CharacterSet NationalCharSet C EnvHp ErrHp ErrHpBatch
C 0 UTF8 1 0619F158 061A46F4 061A3F7C
C Starting user session (con_hdl=0,svchp=061A3EC8,srvhp=061B5794,usrhp=061CA558)
C Now 'SAPSR3/<pwd>@CRM' is connected (con_hdl 0, nls_hdl 0).
C Database NLS settings: AMERICAN_AMERICA.UTF8
C Database instance CRM is running on CRMSYS with ORACLE version 10.2.0.1.0 since 20110831
B
B Wed Aug 31 15:45:49 2011
B Connection 0 opened (DBSL handle 0)
B Wp Hdl ConName ConId ConState TX PRM RCT TIM MAX OPT Date Time DBHost
B 000 000 R/3 000000000 ACTIVE NO YES NO 000 255 255 20110831 154542 CRMSYS
M db_connect o.k.
M ICT: exclude compression: .zip,.cs,.rar,.arj,.z,.gz,.tar,.lzh,.cab,.hqx,.ace,.jar,.ear,.war,.css,.pdf,.js,.gzip,.uue,.bz2,.iso,.sda,.sar,.gif
I
I Wed Aug 31 15:46:12 2011
I MtxInit: 0 0 0
M SHM_PRES_BUF (addr: 0A7C0040, size: 4400000)
M SHM_ROLL_AREA (addr: 788A0040, size: 61440000)
M SHM_PAGING_AREA (addr: 0AC00040, size: 32768000)
M SHM_ROLL_ADM (addr: 0CB50040, size: 615040)
M SHM_PAGING_ADM (addr: 0CBF0040, size: 525344)
M ThCreateNoBuffer allocated 544152 bytes for 1000 entries at 0CC80040
M ThCreateNoBuffer index size: 3000 elems
M ThCreateVBAdm allocated 12160 bytes (50 server) at 0CD10040
X EmInit: MmSetImplementation( 2 ).
X MM diagnostic options set: 0
X <ES> client 0 initializing ....
X Using implementation flat
X ES initialized.
B db_con_shm_ini: WP_ID = 0, WP_CNT = 13, CON_ID = -1
B dbtbxbuf: Buffer TABL (addr: 10E700C8, size: 30000000, end: 12B0C448)
B dbtbxbuf: Buffer TABLP (addr: 12B100C8, size: 10240000, end: 134D40C8)
B dbexpbuf: Buffer EIBUF (addr: 0FBA00D0, size: 4194304, end: 0FFA00D0)
B dbexpbuf: Buffer ESM (addr: 134E00D0, size: 4194304, end: 138E00D0)
B dbexpbuf: Buffer CUA (addr: 138F00D0, size: 3072000, end: 13BDE0D0)
B dbexpbuf: Buffer OTR (addr: 13BE00D0, size: 4194304, end: 13FE00D0)
M rdisp/reinitialize_code_page -> 0
M icm/accept_remote_trace_level -> 0
M rdisp/no_hooks_for_sqlbreak -> 0
M CCMS: AlInitGlobals : alert/use_sema_lock = TRUE.
S
S Wed Aug 31 15:46:15 2011
S *** init spool environment
S initialize debug system
T Stack direction is downwards.
T debug control: prepare exclude for printer trace
T new memory block 1946AA80
S
S Wed Aug 31 15:46:16 2011
S spool kernel/ddic check: Ok
S using table TSP02FX for frontend printing
S 1 spool work process(es) found
S frontend print via spool service enabled
S printer list size is 150
S printer type list size is 50
S queue size (profile) = 300
S hostspool list size = 3000
S option list size is 30
S found processing queue enabled
S found spool memory service RSPO-RCLOCKS at 1D6D00A8
S doing lock recovery
S setting server cache root
S found spool memory service RSPO-SERVERCACHE at 1D6D0430
S using messages for server info
S size of spec char cache entry: 297028 bytes (timeout 100 sec)
S size of open spool request entry: 2132 bytes
S immediate print option for implicitely closed spool requests is disabled
A
A Wed Aug 31 15:46:18 2011
A
A -PXA--
A PXA INITIALIZATION
A PXA: Fragment Size too small: 73 MB, reducing # of fragments
A System page size: 4kb, total admin_size: 5132kb, dir_size: 5076kb.
A Attached to PXA (address 688A0040, size 150000K)
A abap/pxa = shared protect gen_remote
A PXA INITIALIZATION FINISHED
A -PXA--
A
A
A Wed Aug 31 15:46:20 2011
A ABAP ShmAdm attached (addr=57A40000 leng=20955136 end=58E3C000)
A >> Shm MMADM area (addr=57EB5E58 leng=126176 end=57ED4B38)
A >> Shm MMDAT area (addr=57ED5000 leng=16150528 end=58E3C000)
A RFC Destination> destination crmsys_CUS_04 host crmsys system CUS systnr 4 (crmsys_CUS_04)
A
A Wed Aug 31 15:46:21 2011
A RFC Options> H=crmsys,S=04,d=2,
A RFC FRFC> fallback activ but this is not a central instance.
A
A RFC rfc/signon_error_log = -1
A RFC rfc/dump_connection_info = 0
A RFC rfc/dump_client_info = 0
A RFC rfc/cp_convert/ignore_error = 1
A RFC rfc/cp_convert/conversion_char = 23
A RFC rfc/wan_compress/threshold = 251
A RFC rfc/recorder_pcs not set, use defaule value: 2
A RFC rfc/delta_trc_level not set, use default value: 0
A RFC rfc/no_uuid_check not set, use default value: 0
A RFC rfc/bc_ignore_thcmaccp_retcode not set, use default value: 0
A RFC Method> initialize RemObjDriver for ABAP Objects
M ThrCreateShObjects allocated 13730 bytes at 0FFB0040
N
N Wed Aug 31 15:46:22 2011
N SsfSapSecin: putenv(SECUDIR=D:\usr\sap\CUS\DVEBMGS04\sec): ok
N
N =================================================
N === SSF INITIALIZATION:
N ===...SSF Security Toolkit name SAPSECULIB .
N ===...SSF trace level is 0 .
N ===...SSF library is D:\usr\sap\CUS\DVEBMGS04\exe\sapsecu.dll .
N ===...SSF hash algorithm is SHA1 .
N ===...SSF symmetric encryption algorithm is DES-CBC .
N ===...sucessfully completed.
N =================================================
N
N Wed Aug 31 15:46:23 2011
N MskiInitLogonTicketCacheHandle: Logon Ticket cache pointer retrieved from shared memory.
N MskiInitLogonTicketCacheHandle: Workprocess runs with Logon Ticket cache.
M JrfcVmcRegisterNativesDriver o.k.
W =================================================
W === ipl_Init() called
B dbtran INFO (init_connection '<DEFAULT>' [ORACLE:700.08]):
B max_blocking_factor = 15, max_in_blocking_factor = 5,
B min_blocking_factor = 10, min_in_blocking_factor = 5,
B prefer_union_all = 0, prefer_join = 0,
B prefer_fix_blocking = 0, prefer_in_itab_opt = 1,
B convert AVG = 0, alias table FUPD = 0,
B escape_as_literal = 1, opt GE LE to BETWEEN = 0,
B select * =0x0f, character encoding = STD / <none>:-,
B use_hints = abap->1, dbif->0x1, upto->2147483647, rule_in->0,
B rule_fae->0, concat_fae->0, concat_fae_or->0
W
W Wed Aug 31 15:46:24 2011
W ITS Plugin: Path dw_gui
W ITS Plugin: Description ITS Plugin - ITS rendering DLL
W ITS Plugin: sizeof(SAP_UC) 2
W ITS Plugin: Release: 700, [7000.0.52.20050900]
W ITS Plugin: Int.version, [32]
W ITS Plugin: Feature set: [10]
W ===... Calling itsp_Init in external dll ===>
W === ipl_Init() returns 0, ITSPE_OK: OK
W =================================================
E Enqueue Info: rdisp/wp_no_enq=1, rdisp/enqname=<empty>, assume crmsys_CUS_04
E Replication is disabled
E EnqCcInitialize: local lock table initialization o.k.
E EnqId_SuppressIpc: local EnqId initialization o.k.
E EnqCcInitialize: local enqueue client init o.k.
B
B Wed Aug 31 15:46:48 2011
B table logging switched off for all clients
M
M Wed Aug 31 15:47:55 2011
M SecAudit(RsauShmInit): WP attached to existing shared memory.
M SecAudit(RsauShmInit): addr of SCSA........... = 05BD0040
M SecAudit(RsauShmInit): addr of RSAUSHM........ = 05BD07A8
M SecAudit(RsauShmInit): addr of RSAUSLOTINFO... = 05BD07E0
M SecAudit(RsauShmInit): addr of RSAUSLOTS...... = 05BD07EC
A
A Wed Aug 31 15:48:44 2011
A RFC FRFC> fallback on the central gateway crmsys sapgw04 activ
B
B Wed Aug 31 15:49:47 2011
B dbmyclu : info : my major identification is 3232288873, minor one 4.
B dbmyclu : info : Time Reference is 1.12.2001 00:00:00h GMT.
B dbmyclu : info : my initial uuid is D98FA690E8AA314D9B69930868792664.
B dbmyclu : info : current optimistic cluster level: 0
B dbmyclu : info : pessimistic reads set to 2. -
Difference between servlet and filter
difference between servlet and filter
Its not a secret you know; if you just read a little about what they are used for, you answer your own question plus many more to follow.
Servlet: http://en.wikipedia.org/wiki/Java_Servlet
Filter: http://www.oracle.com/technetwork/java/filters-137243.html -
Difference between servlet and ActionServlet
Difference between servlet and ActionServlet..
Anybody replyjsf_VWP5.5.1 wrote:
Difference between servlet and ActionServlet..
Anybody replyAs their name imply, ActionServlets like outdoor activities, whereas Servlets are rather contemplative types.
The only time Servlets exhibit behavior similar to ActionServlets, in under extremely stressful situations, like when a Servlet is being chased by a pit bull. -
Communication between jsp and abstractportalcomponent
Hello All
Communication between jsp and abstractPortalComponent.
jsp contains one input text field and one submit button.
when the user clicks on submit button it will call the component and that input value will
display in same jsp page.
how this communication will happen?
Rgrds
SriHi Srikanth,
In the JAVA File,
OnSubmit Event,
String inputvalue ;
InputField myInputField = (InputField) getComponentByName("Input_Field_ID");
if (myInputField != null) {
inputvalue = myInputField.getValueAsDataType().toString();
request.putValue("textvalue", inputvalue);
request is IPORTALCOMPONENTREQUEST Object.
In JSP File, to retreive the value,
<%
String textstring = (String) ComponentRequest.getValue("textvalue");
%>
In PORTALAPP.XML File,
<component name="component name">
<component-config>
<property name="ClassName" value="classname"/>
<property name="SafetyLevel" value="no_safety"/>
</component-config>
<component-profile>
<property name="tagLib" value="/SERVICE/htmlb/taglib/htmlb.tld"/>
</component-profile>
</component>
Using the code above, You can pass and read values between abstract portal component and Jsp Page.
Instead of this, I suggest you to use JSPDYNPAGE Component for Data Exchange.
Check the [Link|http://help.sap.com/saphelp_nw2004s/helpdata/de/ce/e0a341354ca309e10000000a155106/frameset.htm].
Hope this helps you.
Regards,
Eben Joyson -
COMMUNICATION BETWEEN JAVASCRIPT AND JAVA APPLET: US$20 AWARD FOR SOLUTION!
COMMUNICATION BETWEEN JAVASCRIPT AND JAVA APPLET PROBLEM (Easy Filter Java Applet) -
US$20 TO ANYONE WHO CAN RESOLVE THE PROBLEM
To forum visitors:
I am prepared to pay a standard shareware fee of US$20 to a user who can resolve this technical problem.
If your advice resolves the problem, I'll forward the payment to your postal address (include your
address with your reply, and also your email address)
I am attempting to enable a HTML button (using Javascript's onClick command) to directly input a number into one of the parameter text boxes in the Easy Filter Java applet (ie, enter a new color value number in the text field of the standard Colors Multiplicator Filter interface).
The applet is Freeware and can be downloaded at: http://www.javazoom.net/applets/easyfilter10/EasyFilter10.html
(It is a very effective bitmap display and editing utility)
To achieve this, I am trying to access the part of the applet that defines and sets the textbox. The text box is defined in the .class file by accessing the parameter details in the genericfilter.txt file (accompanies the .class files). I need to access 'private String appletInitialize()' and then one of the 'textFieldParameters' which sets the textbox.
I understand the basic syntax for referencing the applet:
document.appletname.setString("An example"). However, accessing the text fields in this applet is more complex!!
Please can you recommend the correct Javascript syntax to achieve communication with the applet.
Thank you for your kind assistance.
JM Graham
[email protected]
The Java source code for the applet: EasyFilter.class
# Easy Filter - E.B/JavaZOOM 1999 #
# Contact: [email protected] #
# http://javazoom.hypermart.net #
/* Originally compiled from EasyFilter.java */
import java.awt.*;
import java.io.*;
import java.net.*;
import java.applet.Applet;
import java.awt.event.KeyEvent;
import java.awt.event.KeyListener;
import java.awt.image.MemoryImageSource;
import java.awt.image.PixelGrabber;
import java.util.Vector;
public synchronized class EasyFilter extends Applet implements KeyListener
private String paramFileName;
private Color bgColor;
private Color fgColor;
private Color parColor;
private Color sepColor;
private Color titleColor;
private Color helpColor;
private int WinWidth;
private int WinHeight;
private String title;
private String logoFileName;
private String originalImageFileName;
private String filteredCaption;
private String originalCaption;
private Vector paramsName;
private Vector paramsValue;
private Vector paramsComment;
private Panel panelParameters[];
private Label labelParameters[];
private TextField textFieldParameters[];
private Label labelComments[];
private int nbParameters;
private ScrollPane scrollPaneParams;
private Panel panelParams;
private Image theLogo;
private Image theOriginalImage;
private Image theFilteredImage;
private int theOriginalPixelArray[];
private int logoWidth;
private int logoHeight;
private int imageWidth;
private int imageHeight;
private drawCanvas canvasTitle;
private Panel panelTitle;
private Label labelTitle;
private Panel panelImages;
private Panel panelOriginalImage;
private drawCanvas canvasOriginalImage;
private Label labelOriginalImage;
private Panel panelFilteredImage;
private drawCanvas canvasFilteredImage;
private Label labelFilteredImage;
private Panel panelHelp;
private Label labelHelp;
private int Yspc;
private FilterImplementation theFilter;
public void init()
String string = null;
string = appletInitialize();
setBackground(bgColor);
if (string != null)
removeAll();
setBackground(Color.white);
setForeground(Color.black);
Label label = new Label(new StringBuffer("Error: ").append(string).toString(), 1);
Panel panel = new Panel();
panel.add(label);
add(panel);
setLayout(new FlowLayout(1, 5, Yspc));
public void keyPressed(KeyEvent keyEvent)
panelHelp.removeAll();
boolean flag = true;
if (KeyEvent.getKeyText(keyEvent.getKeyCode()).equals("Enter"))
for (int i = 0; i < nbParameters; )
try
paramsValue.setElementAt(new Double(textFieldParameters.getText()), i);
i++;
catch (NumberFormatException e)
labelHelp.setText(labelParameters[i].getText() + ": Not a Number");
flag = false;
break;
if (flag == 1)
labelHelp.setText(" .... Running, please wait .... ");
labelHelp.setAlignment(1);
panelHelp.add(labelHelp);
panelHelp.doLayout();
theFilter.updateParameters(paramsValue);
theFilter.computeFilter();
theFilteredImage = createImage(new MemoryImageSource(theFilter.getFinalImageWidth(), theFilter.getFinalImageHeight(), theFilter.getFinalImageBuffer(), 0, theFilter.getFinalImageWidth()));
canvasFilteredImage.setImage(theFilteredImage);
canvasFilteredImage.setBounds(0, 0, theFilter.getFinalImageWidth(), theFilter.getFinalImageHeight());
canvasFilteredImage.repaint();
panelHelp.removeAll();
labelHelp.setText("- Done -");
else
labelHelp.setText("- Press Enter to run the Filter -");
labelHelp.setAlignment(1);
panelHelp.add(labelHelp);
panelHelp.doLayout();
public void keyReleased(KeyEvent keyEvent)
public void keyTyped(KeyEvent keyEvent)
private String appletInitialize()
WinWidth = size().width;
WinHeight = size().height;
if (getParameter("bgcolor") == null)
bgColor = new Color(0, 0, 40);
else
bgColor = new Color(Integer.parseInt(getParameter("bgcolor"), 16));
if (getParameter("fgcolor") == null)
fgColor = new Color(255, 255, 255);
else
fgColor = new Color(Integer.parseInt(getParameter("fgcolor"), 16));
if (getParameter("sepcolor") == null)
sepColor = new Color(158, 128, 128);
else
sepColor = new Color(Integer.parseInt(getParameter("sepcolor"), 16));
if (getParameter("parcolor") == null)
parColor = new Color(24, 24, 24);
else
parColor = new Color(Integer.parseInt(getParameter("parcolor"), 16));
if (getParameter("titlecolor") == null)
titleColor = new Color(255, 255, 0);
else
titleColor = new Color(Integer.parseInt(getParameter("titlecolor"), 16));
if (getParameter("helpcolor") == null)
helpColor = new Color(0, 255, 255);
else
helpColor = new Color(Integer.parseInt(getParameter("helpcolor"), 16));
paramsName = new Vector();
paramsValue = new Vector();
paramsComment = new Vector();
paramFileName = getParameter("paramfile");
String string = readParams(paramFileName);
if (string != null)
return string;
MediaTracker mediaTracker = new MediaTracker(this);
theOriginalImage = getImage(getDocumentBase(), originalImageFileName);
mediaTracker.addImage(theOriginalImage, 0);
if (logoFileName != null)
theLogo = getImage(getDocumentBase(), logoFileName);
mediaTracker.addImage(theLogo, 1);
try
mediaTracker.waitForAll();
catch (InterruptedException e1)
return "Error while loading image";
if (mediaTracker.isErrorAny())
return "Error while loading image";
if (logoFileName != null)
logoWidth = theLogo.getWidth(this);
logoHeight = theLogo.getHeight(this);
imageWidth = theOriginalImage.getWidth(this);
imageHeight = theOriginalImage.getHeight(this);
theOriginalPixelArray = new int[imageWidth * imageHeight];
PixelGrabber pixelGrabber = new PixelGrabber(theOriginalImage, 0, 0, imageWidth, imageHeight, theOriginalPixelArray, 0, imageWidth);
try
pixelGrabber.grabPixels();
panelTitle = new Panel();
canvasTitle = new drawCanvas();
labelTitle = new Label();
panelTitle.setLayout(new FlowLayout(1, 10, Yspc));
add(panelTitle);
panelTitle.setBackground(bgColor);
panelTitle.add(canvasTitle);
canvasTitle.setImage(theLogo);
canvasTitle.setBounds(0, 0, logoWidth, logoHeight);
labelTitle.setText(title);
catch (InterruptedException e2)
return "Internal Error, Try RELOAD !";
if (title != null)
panelTitle.add(labelTitle);
labelTitle.setForeground(titleColor);
labelTitle.setFont(new Font("Dialog", 1, 14));
panelImages = new Panel();
panelOriginalImage = new Panel();
canvasOriginalImage = new drawCanvas();
labelOriginalImage = new Label();
panelFilteredImage = new Panel();
canvasFilteredImage = new drawCanvas();
labelFilteredImage = new Label();
panelImages.setLayout(new FlowLayout(1, 10, Yspc));
add(panelImages);
panelImages.setBackground(bgColor);
panelOriginalImage.setLayout(new BorderLayout(0, 2));
panelImages.add(panelOriginalImage);
panelOriginalImage.setBackground(Color.black);
panelOriginalImage.add("Center", canvasOriginalImage);
canvasOriginalImage.setImage(theOriginalImage);
canvasOriginalImage.setBounds(0, 0, imageWidth, imageHeight);
labelOriginalImage.setText(originalCaption);
labelOriginalImage.setAlignment(1);
panelOriginalImage.add("South", labelOriginalImage);
labelOriginalImage.setBackground(Color.lightGray);
labelOriginalImage.setForeground(Color.black);
labelOriginalImage.setFont(new Font("SansSerif", 0, 10));
panelFilteredImage.setLayout(new BorderLayout(0, 2));
panelImages.add(panelFilteredImage);
panelFilteredImage.setBackground(Color.black);
panelFilteredImage.add("Center", canvasFilteredImage);
theFilter = new FilterImplementation(paramsValue, theOriginalPixelArray, imageWidth, imageHeight);
theFilter.computeFilter();
theFilteredImage = createImage(new MemoryImageSource(theFilter.getFinalImageWidth(), theFilter.getFinalImageHeight(), theFilter.getFinalImageBuffer(), 0, theFilter.getFinalImageWidth()));
canvasFilteredImage.setImage(theFilteredImage);
canvasFilteredImage.setBounds(0, 0, theFilter.getFinalImageWidth(), theFilter.getFinalImageHeight());
labelFilteredImage.setText(filteredCaption);
labelFilteredImage.setAlignment(1);
panelFilteredImage.add("South", labelFilteredImage);
labelFilteredImage.setBackground(Color.lightGray);
labelFilteredImage.setFont(new Font("SansSerif", 0, 10));
scrollPaneParams = new ScrollPane(0);
panelParams = new Panel();
nbParameters = paramsName.size();
int i = WinHeight - (33 + 7 * Yspc + logoHeight + imageHeight + 23);
if (i < Yspc + 2 + 24)
i = Yspc + 2 + 24;
scrollPaneParams.setBounds(0, 0, WinWidth - 10, i);
panelParams.setLayout(new GridLayout(nbParameters, 1, 5, Yspc / 2));
scrollPaneParams.add(panelParams);
panelParams.setBackground(sepColor);
panelParameters = new Panel[nbParameters];
labelParameters = new Label[nbParameters];
textFieldParameters = new TextField[nbParameters];
labelComments = new Label[nbParameters];
for (int j = 0; j < nbParameters; j++)
panelParameters[j] = new Panel();
panelParameters[j].setLayout(new FlowLayout(0, 5, 1));
panelParams.add(panelParameters[j]);
panelParameters[j].setBackground(parColor);
labelParameters[j] = new Label();
labelParameters[j].setText((String)paramsName.elementAt(j));
panelParameters[j].add(labelParameters[j]);
labelParameters[j].setForeground(fgColor);
labelParameters[j].setFont(new Font("Dialog", 1, 12));
textFieldParameters[j] = new TextField(8);
textFieldParameters[j].setText(paramsValue.elementAt(j).toString());
panelParameters[j].add(textFieldParameters[j]);
textFieldParameters[j].setBackground(fgColor);
textFieldParameters[j].addKeyListener(this);
labelComments[j] = new Label();
labelComments[j].setText((String)paramsComment.elementAt(j));
panelParameters[j].add(labelComments[j]);
labelComments[j].setForeground(fgColor);
add(scrollPaneParams);
panelHelp = new Panel();
labelHelp = new Label();
panelHelp.setLayout(new FlowLayout(1, 5, 0));
add(panelHelp);
panelHelp.setBackground(bgColor);
labelHelp.setText(" Change colour values and press enter ");
labelHelp.setAlignment(1);
panelHelp.add(labelHelp);
labelHelp.setForeground(helpColor);
return null;
private String readParams(String string1)
Object object1;
String string2;
if (string1 == null)
return "Filename of filter's parameters needed";
try
URL uRL = new URL(getDocumentBase(), string1);
URLConnection uRLConnection = uRL.openConnection();
uRLConnection.setDoInput(true);
uRLConnection.setUseCaches(false);
BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(uRLConnection.getInputStream()));
string2 = null;
catch ()
return object1.getMessage();
catch ()
return object1.getMessage();
catch ()
return object1.getMessage();
if (bufferedReader != null)
Object object2;
try
for (object2 = bufferedReader.readLine(); object2 != null && string2 == null; object2 = bufferedReader.readLine())
string2 = extractFormat(object2);
catch ()
string2 = object2.getMessage();
finally
bufferedReader.close();
if (string2 != null)
return string2;
else
return null;
private String extractFormat(String string1)
if (string1.length() == 0)
return null;
int i = 0;
int j = string1.indexOf(" ", i);
if (j == -1)
return "Bad format error (space missing)";
String string2 = string1.substring(i, j);
if (string2.equals("TITLE"))
i = j;
j = string1.indexOf(34, i);
if (j == -1)
return "Bad format (Double quote in TITLE missing)";
i = j + 1;
j = string1.indexOf(34, i);
if (j == -1)
return "Bad format (Double quote in TITLE missing)";
title = string1.substring(i, j);
return null;
if (string2.equals("ORIGINALCAPTION"))
i = j;
j = string1.indexOf(34, i);
if (j == -1)
return "Bad format (Double quote in ORIGINALCAPTION missing)";
i = j + 1;
j = string1.indexOf(34, i);
if (j == -1)
return "Bad format (Double quote in ORIGINALCAPTION missing)";
originalCaption = string1.substring(i, j);
return null;
if (string2.equals("FILTEREDCAPTION"))
i = j;
j = string1.indexOf(34, i);
if (j == -1)
return "Bad format (Double quote in FILTEREDCAPTION missing)";
i = j + 1;
j = string1.indexOf(34, i);
if (j == -1)
return "Bad format (Double quote in FILTEREDCAPTION missing)";
filteredCaption = string1.substring(i, j);
return null;
if (string2.equals("LOGO"))
i = j + 1;
j = string1.length();
logoFileName = string1.substring(i, j);
return null;
if (string2.equals("ORIGINALIMAGE"))
i = j + 1;
j = string1.length();
originalImageFileName = string1.substring(i, j);
return null;
if (!string2.equals("PARAM"))
return null;
i = j;
j = string1.indexOf(34, i);
if (j == -1)
return "Bad format in a PARAM line";
i = j + 1;
j = string1.indexOf(34, i);
if (j == -1)
return "Bad format in a PARAM line";
paramsName.addElement(string1.substring(i, j));
i = j + 2;
j = string1.indexOf(32, i);
if (j == -1)
return "Bad format in a PARAM line";
try
paramsValue.addElement(new Double(string1.substring(i, j)));
j = string1.indexOf(34, i);
catch (NumberFormatException e)
return "Bad format in a PARAM line";
if (j == -1)
return "Bad format (Double quote in PARAM comment missing)";
i = j + 1;
j = string1.indexOf(34, i);
if (j == -1)
return "Bad format (Double quote in PARAM comment missing)";
paramsComment.addElement(string1.substring(i, j));
return null;
public EasyFilter()
logoHeight = 33;
Yspc = 5;Addition to my above submission
To clarify, I'll offer the US$20 to the FIRST person who offers me a workable solution to the problem, not to everyone!!!
JMGRAHAM -
Communication between javascript and Objective-c in iOS.
We wanted to have a communication between javascript and objective c code. We have already tried the below approach.
To load fake URLs in JS and append a string which will be used as parameter to the Objective-C code and parse that URL in this delegate method:
-(BOOL)webView(UIWebView *)webView shouldStartLoadWithRequest(NSURLRequest *)request navigationType(UIWebViewNavigationType)navigationType
Then send the return value by calling the native method stringByEvaluatingJavaScriptFromString again with parameter callID.
But we wanted to access Objective class object in Javascript code so that we can call it's methods from javascript code using this object.Android supports this behaviour using addJavaScriptInterface method in webview. Is it possible to have the similar approach in IOS? If not what is the best approach possible to acheive this? If we could achieve similar behaviour then we don't need to change the Jacascript code and will be reused. Please suggest the best possible solution.
Regards,
Karthik M.https://developer.apple.com/library/mac/documentation/AppleApplications/Conceptu al/SafariJSProgTopics/Tasks/ObjCFromJavaScript.html
-
Short dump Error during VM container communication between ABAP and JAVA.
Hello All,
Can anybody please help with resolving the following issue:
Short dump is displayed, when I try to insert CRM product (type: material) in the document (opportunity). This CRM product was created in CRM directly.
When I try to insert ECC migrated material, everything works fine.
Here is the details of dump:
Short text
Error during VM container communication between ABAP and JAVA
Information on where terminated
Termination occurred in the ABAP program "SAPLPRC_INT" - in "GET_PRICING_PROCEDURE_INFO".
The main program was "SAPMHTTP ". In the source code you have the termination point in line 100 of the (Include) program "LPRC_INTF35".
Thank you!hi Willie,
this is the dump, and i have used the t-code sm52 . the VMC is not active.
|Short Text |
| Error during VM Container communication between ABAP and JAVA. |
|What happened? |
| The current program had to be terminated because of an |
| error when installing the R/3 System. |
| Error in the RFC layer. |
|What can you do? |
| Note which actions and entries caused the error to occur. |
| |
| Consult your SAP administrator. |
| |
| Using transaction ST22 for ABAP dump analysis, you can view, manage, |
| and retain termination messages for longer periods. |
|Error analysis |
| An error has occurred in the RFC layer during communication between |
| JAVA and the ABAP stack. This prevents data from being passed correctly |
| between the two stacks. |
| |
| Message = TH_VMC_SERV_NOT_ACTIVE |
| Return code = -1007 |
| Pointer = "000007DD348F6138" |
|How to correct the error |
| Check whether the VMC is active on your application server. To do this, |
| run transaction SM52. If the VMC is not active, contact your SAP |
| administrator. |
Regards
Charles -
Steps involved in setting up communication between CRM and R3 / ECC
Hi all,
Can you please tell what are the steps involved in setting up communication between CRM and R3 or ECC.
I know that initially logical systems, RFC connections and other technical settings need to be done by Basis consultants.
From a functional consultants viewpoint, what all config settings need to be done so that data transfer between the systems can take place?
Thanks in advance.Hi,
There are a series of steps that are to be done...
These include creating sites and subscription in CRM, setting up filters, and number ranges....
All these are in the connectivity guide C71 and replication guide B09.
Refer C71 first and then B09. These would suffice.
You can get these both in the follwoing reference:
http://help.sap.com/bp_crmv340/CRM_DE/index.htm
If you dont get, then gimme your email id, i shall forward these docs to you.
Kindly reward with points in case helpful
Sharif. -
Error during VM container communication between ABAB and Java
Hi All
Once in a while we get this error while creating shopping cart.
'Error during VM container communication between ABAB and Java"
Why ? only one user has thos problem
SAP SRM 5 .0
what could be the reason ?
It is not happening always.
any help /reason for this error is appreciated?
br
muthuHi,
Please check the below link :
/message/6055324#6055324 [original link is broken]
i hope this will help you..
With Regards,
CSK -
After Update of iPad and MacBookPro no communication between AppleTV and Devices
After Update of my iPad 2 with iOS 6.0 and OS to 10.8.2 there is no communication between AppleTV and these devices.
Start with this and follow all of the links and see it any of these suggestions work.
http://support.apple.com/kb/ts1368
Maybe you are looking for
-
Windows xp install -- black screen with no cursor
I've seen a number of posts about Boot Camp installation problems involving a black screen with a blinking cursor, but my problem is simply with a black screen. On my MacBook Pro 15" Core 2 Duo (graphics card: ATY,RadeonX1600) I'm able to partition t
-
PLEASE HELP! Apple Color crashes on timeline import!
I'm at a complete loss right now; no idea what I should do. Running OS X 10.6.3, Final Cut Pro 7, and Color 1.5 On one specific FCP project, I attempt to send a sequence to Color in order to be graded. Color opens and begins importing the project. On
-
How can I sort on more than one column?
I use the Album tag for individual tracks I have imported from analogue (via Final Vinyl), so I have 000's of tracks that are tagged (e.g.) 'FV MD AAC'. When I sort by Album, I want to further sort by Artist, so all my imported music is together and
-
How do I deactivate adobe 6 on an old computer when there is no deactivation tab in help?
How do I deactivate adobe 6 on an old computer when there is no deactivation tab in help?
-
i own master collection 5.5 for windows. i've just gotten back into flex development by writing a small app for work with Flash Builder, and want to create native installers for windows & mac. okay, so i have windows covered. i do own a mac, so i w