root / org.gvsig.toolbox / trunk / org.gvsig.toolbox / org.gvsig.toolbox.algorithm / src / main / java / org / json / Test.java @ 59
History | View | Annotate | Download (19.7 KB)
1 | 59 | nbrodin | package org.json; |
---|---|---|---|
2 | |||
3 | import java.io.StringWriter; |
||
4 | import java.util.Collection; |
||
5 | import java.util.Iterator; |
||
6 | import java.util.Map; |
||
7 | |||
8 | /**
|
||
9 | * Test class. This file is not formally a member of the org.json library. It is just a casual test tool.
|
||
10 | */
|
||
11 | public class Test { |
||
12 | |||
13 | /**
|
||
14 | * Entry point.
|
||
15 | *
|
||
16 | * @param args
|
||
17 | */
|
||
18 | public static void main(final String args[]) { |
||
19 | Iterator it;
|
||
20 | JSONArray a; |
||
21 | JSONObject j; |
||
22 | JSONStringer jj; |
||
23 | String s;
|
||
24 | |||
25 | // Obj is a typical class that implements JSONString.
|
||
26 | |||
27 | class Obj |
||
28 | implements
|
||
29 | JSONString { |
||
30 | public String aString; |
||
31 | public double aNumber; |
||
32 | public boolean aBoolean; |
||
33 | |||
34 | |||
35 | public Obj(final String string, |
||
36 | final double n, |
||
37 | final boolean b) { |
||
38 | this.aString = string;
|
||
39 | this.aNumber = n;
|
||
40 | this.aBoolean = b;
|
||
41 | } |
||
42 | |||
43 | |||
44 | public String toJSONString() { |
||
45 | return "{" + JSONObject.quote(this.aString) + ":" + JSONObject.doubleToString(this.aNumber) + "}"; |
||
46 | } |
||
47 | |||
48 | |||
49 | @Override
|
||
50 | public String toString() { |
||
51 | return this.aString + " " + this.aNumber + " " + this.aBoolean; |
||
52 | } |
||
53 | } |
||
54 | |||
55 | |||
56 | try {
|
||
57 | final String sa[] = { "aString", "aNumber", "aBoolean" }; |
||
58 | final Obj obj = new Obj("A string, a number, and a boolean", 42, true); |
||
59 | |||
60 | j = XML.toJSONObject("<![CDATA[This is a collection of test patterns and examples for org.json.]]> Ignore the stuff past the end. ");
|
||
61 | System.out.println(j.toString());
|
||
62 | |||
63 | jj = new JSONStringer();
|
||
64 | s = jj.object().key("foo").value("bar").key("baz").array().object().key("quux").value("Thanks, Josh!").endObject().endArray().endObject().toString(); |
||
65 | System.out.println(s);
|
||
66 | |||
67 | System.out.println(new JSONStringer().object().key("a").array().array().array().value("b").endArray().endArray().endArray().endObject().toString()); |
||
68 | |||
69 | jj = new JSONStringer();
|
||
70 | jj.array(); |
||
71 | jj.value(1);
|
||
72 | jj.array(); |
||
73 | jj.value(null);
|
||
74 | jj.array(); |
||
75 | jj.object(); |
||
76 | jj.key("empty-array").array().endArray();
|
||
77 | jj.key("answer").value(42); |
||
78 | jj.key("null").value(null); |
||
79 | jj.key("false").value(false); |
||
80 | jj.key("true").value(true); |
||
81 | jj.key("big").value(123456789e+88); |
||
82 | jj.key("small").value(123456789e-88); |
||
83 | jj.key("empty-object").object().endObject();
|
||
84 | jj.key("long");
|
||
85 | jj.value(9223372036854775807L);
|
||
86 | jj.endObject(); |
||
87 | jj.value("two");
|
||
88 | jj.endArray(); |
||
89 | jj.value(true);
|
||
90 | jj.endArray(); |
||
91 | jj.value(98.6);
|
||
92 | jj.value(-100.0);
|
||
93 | jj.object(); |
||
94 | jj.endObject(); |
||
95 | jj.object(); |
||
96 | jj.key("one");
|
||
97 | jj.value(1.00);
|
||
98 | jj.endObject(); |
||
99 | jj.value(obj); |
||
100 | jj.endArray(); |
||
101 | System.out.println(jj.toString());
|
||
102 | |||
103 | System.out.println(new JSONArray(jj.toString()).toString(4)); |
||
104 | |||
105 | j = new JSONObject(obj, sa);
|
||
106 | j.put("test", obj);
|
||
107 | j.put("comment", "This object contains a test object that implements JSONString"); |
||
108 | System.out.println(j.toString(4)); |
||
109 | |||
110 | j = new JSONObject(
|
||
111 | "{slashes: '///', closetag: '</script>', backslash:'\\\\', ei: {quotes: '\"\\''},eo: {a: '\"quoted\"', b:\"don't\"}, quotes: [\"'\", '\"']}");
|
||
112 | System.out.println(j.toString(2)); |
||
113 | System.out.println(XML.toString(j));
|
||
114 | System.out.println(""); |
||
115 | |||
116 | j = new JSONObject("/*comment*/{foo: [true, false,9876543210, 0.0, 1.00000001, 1.000000000001, 1.00000000000000001," |
||
117 | + " .00000000000000001, 2.00, 0.1, 2e100, -32,[],{}, \"string\"], " + " to : null, op : 'Good'," |
||
118 | + "ten:10} postfix comment");
|
||
119 | j.put("String", "98.6"); |
||
120 | j.put("JSONObject", new JSONObject()); |
||
121 | j.put("JSONArray", new JSONArray()); |
||
122 | j.put("int", 57); |
||
123 | j.put("double", 123456789012345678901234567890.); |
||
124 | j.put("true", true); |
||
125 | j.put("false", false); |
||
126 | j.put("null", JSONObject.NULL);
|
||
127 | j.put("bool", "true"); |
||
128 | j.put("zero", -0.0); |
||
129 | j.put("\\u2028", "\u2028"); |
||
130 | j.put("\\u2029", "\u2029"); |
||
131 | a = j.getJSONArray("foo");
|
||
132 | a.put(666);
|
||
133 | a.put(2001.99);
|
||
134 | a.put("so \"fine\".");
|
||
135 | a.put("so <fine>.");
|
||
136 | a.put(true);
|
||
137 | a.put(false);
|
||
138 | a.put(new JSONArray());
|
||
139 | a.put(new JSONObject());
|
||
140 | System.out.println(j.toString(4)); |
||
141 | System.out.println(XML.toString(j));
|
||
142 | |||
143 | System.out.println("String: " + j.getDouble("String")); |
||
144 | System.out.println(" bool: " + j.getBoolean("bool")); |
||
145 | System.out.println(" to: " + j.getString("to")); |
||
146 | System.out.println(" true: " + j.getString("true")); |
||
147 | System.out.println(" foo: " + j.getJSONArray("foo")); |
||
148 | System.out.println(" op: " + j.getString("op")); |
||
149 | System.out.println(" ten: " + j.getInt("ten")); |
||
150 | System.out.println(" oops: " + j.optBoolean("oops")); |
||
151 | |||
152 | j = XML.toJSONObject("<xml one = 1 two=' \"2\" '><five></five>First \u0009<content><five></five> This is \"content\". <three> 3 </three>JSON does not preserve the sequencing of elements and contents.<three> III </three> <three> T H R E E</three><four/>Content text is an implied structure in XML. <six content=\"6\"/>JSON does not have implied structure:<seven>7</seven>everything is explicit.<![CDATA[CDATA blocks<are><supported>!]]></xml>");
|
||
153 | System.out.println(j.toString(2)); |
||
154 | System.out.println(XML.toString(j));
|
||
155 | System.out.println(""); |
||
156 | |||
157 | j = XML.toJSONObject("<mapping><empty/> <class name = \"Customer\"> <field name = \"ID\" type = \"string\"> <bind-xml name=\"ID\" node=\"attribute\"/> </field> <field name = \"FirstName\" type = \"FirstName\"/> <field name = \"MI\" type = \"MI\"/> <field name = \"LastName\" type = \"LastName\"/> </class> <class name = \"FirstName\"> <field name = \"text\"> <bind-xml name = \"text\" node = \"text\"/> </field> </class> <class name = \"MI\"> <field name = \"text\"> <bind-xml name = \"text\" node = \"text\"/> </field> </class> <class name = \"LastName\"> <field name = \"text\"> <bind-xml name = \"text\" node = \"text\"/> </field> </class></mapping>");
|
||
158 | |||
159 | System.out.println(j.toString(2)); |
||
160 | System.out.println(XML.toString(j));
|
||
161 | System.out.println(""); |
||
162 | |||
163 | j = XML.toJSONObject("<?xml version=\"1.0\" ?><Book Author=\"Anonymous\"><Title>Sample Book</Title><Chapter id=\"1\">This is chapter 1. It is not very long or interesting.</Chapter><Chapter id=\"2\">This is chapter 2. Although it is longer than chapter 1, it is not any more interesting.</Chapter></Book>");
|
||
164 | System.out.println(j.toString(2)); |
||
165 | System.out.println(XML.toString(j));
|
||
166 | System.out.println(""); |
||
167 | |||
168 | j = XML.toJSONObject("<!DOCTYPE bCard 'http://www.cs.caltech.edu/~adam/schemas/bCard'><bCard><?xml default bCard firstname = '' lastname = '' company = '' email = '' homepage = ''?><bCard firstname = 'Rohit' lastname = 'Khare' company = 'MCI' email = 'khare@mci.net' homepage = 'http://pest.w3.org/'/><bCard firstname = 'Adam' lastname = 'Rifkin' company = 'Caltech Infospheres Project' email = 'adam@cs.caltech.edu' homepage = 'http://www.cs.caltech.edu/~adam/'/></bCard>");
|
||
169 | System.out.println(j.toString(2)); |
||
170 | System.out.println(XML.toString(j));
|
||
171 | System.out.println(""); |
||
172 | |||
173 | j = XML.toJSONObject("<?xml version=\"1.0\"?><customer> <firstName> <text>Fred</text> </firstName> <ID>fbs0001</ID> <lastName> <text>Scerbo</text> </lastName> <MI> <text>B</text> </MI></customer>");
|
||
174 | System.out.println(j.toString(2)); |
||
175 | System.out.println(XML.toString(j));
|
||
176 | System.out.println(""); |
||
177 | |||
178 | j = XML.toJSONObject("<!ENTITY tp-address PUBLIC '-//ABC University::Special Collections Library//TEXT (titlepage: name and address)//EN' 'tpspcoll.sgm'><list type='simple'><head>Repository Address </head><item>Special Collections Library</item><item>ABC University</item><item>Main Library, 40 Circle Drive</item><item>Ourtown, Pennsylvania</item><item>17654 USA</item></list>");
|
||
179 | System.out.println(j.toString());
|
||
180 | System.out.println(XML.toString(j));
|
||
181 | System.out.println(""); |
||
182 | |||
183 | j = XML.toJSONObject("<test intertag status=ok><empty/>deluxe<blip sweet=true>&"toot"&toot;A</blip><x>eks</x><w>bonus</w><w>bonus2</w></test>");
|
||
184 | System.out.println(j.toString(2)); |
||
185 | System.out.println(XML.toString(j));
|
||
186 | System.out.println(""); |
||
187 | |||
188 | j = HTTP.toJSONObject("GET / HTTP/1.0\nAccept: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/vnd.ms-powerpoint, application/vnd.ms-excel, application/msword, */*\nAccept-Language: en-us\nUser-Agent: Mozilla/4.0 (compatible; MSIE 5.5; Windows 98; Win 9x 4.90; T312461; Q312461)\nHost: www.nokko.com\nConnection: keep-alive\nAccept-encoding: gzip, deflate\n");
|
||
189 | System.out.println(j.toString(2)); |
||
190 | System.out.println(HTTP.toString(j));
|
||
191 | System.out.println(""); |
||
192 | |||
193 | j = HTTP.toJSONObject("HTTP/1.1 200 Oki Doki\nDate: Sun, 26 May 2002 17:38:52 GMT\nServer: Apache/1.3.23 (Unix) mod_perl/1.26\nKeep-Alive: timeout=15, max=100\nConnection: Keep-Alive\nTransfer-Encoding: chunked\nContent-Type: text/html\n");
|
||
194 | System.out.println(j.toString(2)); |
||
195 | System.out.println(HTTP.toString(j));
|
||
196 | System.out.println(""); |
||
197 | |||
198 | j = new JSONObject(
|
||
199 | "{nix: null, nux: false, null: 'null', 'Request-URI': '/', Method: 'GET', 'HTTP-Version': 'HTTP/1.0'}");
|
||
200 | System.out.println(j.toString(2)); |
||
201 | System.out.println("isNull: " + j.isNull("nix")); |
||
202 | System.out.println(" has: " + j.has("nix")); |
||
203 | System.out.println(XML.toString(j));
|
||
204 | System.out.println(HTTP.toString(j));
|
||
205 | System.out.println(""); |
||
206 | |||
207 | j = XML.toJSONObject("<?xml version='1.0' encoding='UTF-8'?>" + "\n\n" + "<SOAP-ENV:Envelope" |
||
208 | + " xmlns:SOAP-ENV=\"http://schemas.xmlsoap.org/soap/envelope/\""
|
||
209 | + " xmlns:xsi=\"http://www.w3.org/1999/XMLSchema-instance\""
|
||
210 | + " xmlns:xsd=\"http://www.w3.org/1999/XMLSchema\">" + "<SOAP-ENV:Body><ns1:doGoogleSearch" |
||
211 | + " xmlns:ns1=\"urn:GoogleSearch\""
|
||
212 | + " SOAP-ENV:encodingStyle=\"http://schemas.xmlsoap.org/soap/encoding/\">"
|
||
213 | + "<key xsi:type=\"xsd:string\">GOOGLEKEY</key> <q"
|
||
214 | + " xsi:type=\"xsd:string\">'+search+'</q> <start" + " xsi:type=\"xsd:int\">0</start> <maxResults" |
||
215 | + " xsi:type=\"xsd:int\">10</maxResults> <filter"
|
||
216 | + " xsi:type=\"xsd:boolean\">true</filter> <restrict"
|
||
217 | + " xsi:type=\"xsd:string\"></restrict> <safeSearch"
|
||
218 | + " xsi:type=\"xsd:boolean\">false</safeSearch> <lr" + " xsi:type=\"xsd:string\"></lr> <ie" |
||
219 | + " xsi:type=\"xsd:string\">latin1</ie> <oe" + " xsi:type=\"xsd:string\">latin1</oe>" |
||
220 | + "</ns1:doGoogleSearch>" + "</SOAP-ENV:Body></SOAP-ENV:Envelope>"); |
||
221 | System.out.println(j.toString(2)); |
||
222 | System.out.println(XML.toString(j));
|
||
223 | System.out.println(""); |
||
224 | |||
225 | j = new JSONObject(
|
||
226 | "{Envelope: {Body: {\"ns1:doGoogleSearch\": {oe: \"latin1\", filter: true, q: \"'+search+'\", key: \"GOOGLEKEY\", maxResults: 10, \"SOAP-ENV:encodingStyle\": \"http://schemas.xmlsoap.org/soap/encoding/\", start: 0, ie: \"latin1\", safeSearch:false, \"xmlns:ns1\": \"urn:GoogleSearch\"}}}}");
|
||
227 | System.out.println(j.toString(2)); |
||
228 | System.out.println(XML.toString(j));
|
||
229 | System.out.println(""); |
||
230 | |||
231 | j = CookieList.toJSONObject(" f%oo = b+l=ah ; o;n%40e = t.wo ");
|
||
232 | System.out.println(j.toString(2)); |
||
233 | System.out.println(CookieList.toString(j));
|
||
234 | System.out.println(""); |
||
235 | |||
236 | j = Cookie.toJSONObject("f%oo=blah; secure ;expires = April 24, 2002");
|
||
237 | System.out.println(j.toString(2)); |
||
238 | System.out.println(Cookie.toString(j));
|
||
239 | System.out.println(""); |
||
240 | |||
241 | j = new JSONObject(
|
||
242 | "{script: 'It is not allowed in HTML to send a close script tag in a string<script>because it confuses browsers</script>so we insert a backslash before the /'}");
|
||
243 | System.out.println(j.toString());
|
||
244 | System.out.println(""); |
||
245 | |||
246 | final JSONTokener jt = new JSONTokener("{op:'test', to:'session', pre:1}{op:'test', to:'session', pre:2}"); |
||
247 | j = new JSONObject(jt);
|
||
248 | System.out.println(j.toString());
|
||
249 | System.out.println("pre: " + j.optInt("pre")); |
||
250 | final int i = jt.skipTo('{'); |
||
251 | System.out.println(i);
|
||
252 | j = new JSONObject(jt);
|
||
253 | System.out.println(j.toString());
|
||
254 | System.out.println(""); |
||
255 | |||
256 | a = CDL.toJSONArray("No quotes, 'Single Quotes', \"Double Quotes\"\n1,'2',\"3\"\n,'It is \"good,\"', \"It works.\"\n\n");
|
||
257 | |||
258 | System.out.println(CDL.toString(a));
|
||
259 | System.out.println(""); |
||
260 | System.out.println(a.toString(4)); |
||
261 | System.out.println(""); |
||
262 | |||
263 | a = new JSONArray(" [\"<escape>\", next is an implied null , , ok,] "); |
||
264 | System.out.println(a.toString());
|
||
265 | System.out.println(""); |
||
266 | System.out.println(XML.toString(a));
|
||
267 | System.out.println(""); |
||
268 | |||
269 | j = new JSONObject(
|
||
270 | "{ fun => with non-standard forms ; forgiving => This package can be used to parse formats that are similar to but not stricting conforming to JSON; why=To make it easier to migrate existing data to JSON,one = [[1.00]]; uno=[[{1=>1}]];'+':+6e66 ;pluses=+++;empty = '' , 'double':0.666,true: TRUE, false: FALSE, null=NULL;[true] = [[!,@;*]]; string=> o. k. ; # comment\r oct=0666; hex=0x666; dec=666; o=0999; noh=0x0x}");
|
||
271 | System.out.println(j.toString(4)); |
||
272 | System.out.println(""); |
||
273 | if (j.getBoolean("true") && !j.getBoolean("false")) { |
||
274 | System.out.println("It's all good"); |
||
275 | } |
||
276 | |||
277 | System.out.println(""); |
||
278 | j = new JSONObject(j, new String[] { "dec", "oct", "hex", "missing" }); |
||
279 | System.out.println(j.toString(4)); |
||
280 | |||
281 | System.out.println(""); |
||
282 | System.out.println(new JSONStringer().array().value(a).value(j).endArray()); |
||
283 | |||
284 | j = new JSONObject(
|
||
285 | "{string: \"98.6\", long: 2147483648, int: 2147483647, longer: 9223372036854775807, double: 9223372036854775808}");
|
||
286 | System.out.println(j.toString(4)); |
||
287 | |||
288 | System.out.println("\ngetInt"); |
||
289 | System.out.println("int " + j.getInt("int")); |
||
290 | System.out.println("long " + j.getInt("long")); |
||
291 | System.out.println("longer " + j.getInt("longer")); |
||
292 | System.out.println("double " + j.getInt("double")); |
||
293 | System.out.println("string " + j.getInt("string")); |
||
294 | |||
295 | System.out.println("\ngetLong"); |
||
296 | System.out.println("int " + j.getLong("int")); |
||
297 | System.out.println("long " + j.getLong("long")); |
||
298 | System.out.println("longer " + j.getLong("longer")); |
||
299 | System.out.println("double " + j.getLong("double")); |
||
300 | System.out.println("string " + j.getLong("string")); |
||
301 | |||
302 | System.out.println("\ngetDouble"); |
||
303 | System.out.println("int " + j.getDouble("int")); |
||
304 | System.out.println("long " + j.getDouble("long")); |
||
305 | System.out.println("longer " + j.getDouble("longer")); |
||
306 | System.out.println("double " + j.getDouble("double")); |
||
307 | System.out.println("string " + j.getDouble("string")); |
||
308 | |||
309 | j.put("good sized", 9223372036854775807L); |
||
310 | System.out.println(j.toString(4)); |
||
311 | |||
312 | a = new JSONArray("[2147483647, 2147483648, 9223372036854775807, 9223372036854775808]"); |
||
313 | System.out.println(a.toString(4)); |
||
314 | |||
315 | System.out.println("\nKeys: "); |
||
316 | it = j.keys(); |
||
317 | while (it.hasNext()) {
|
||
318 | s = (String) it.next();
|
||
319 | System.out.println(s + ": " + j.getString(s)); |
||
320 | } |
||
321 | |||
322 | |||
323 | System.out.println("\naccumulate: "); |
||
324 | j = new JSONObject();
|
||
325 | j.accumulate("stooge", "Curly"); |
||
326 | j.accumulate("stooge", "Larry"); |
||
327 | j.accumulate("stooge", "Moe"); |
||
328 | a = j.getJSONArray("stooge");
|
||
329 | a.put(5, "Shemp"); |
||
330 | System.out.println(j.toString(4)); |
||
331 | |||
332 | System.out.println("\nwrite:"); |
||
333 | System.out.println(j.write(new StringWriter())); |
||
334 | |||
335 | s = "<xml empty><a></a><a>1</a><a>22</a><a>333</a></xml>";
|
||
336 | j = XML.toJSONObject(s); |
||
337 | System.out.println(j.toString(4)); |
||
338 | System.out.println(XML.toString(j));
|
||
339 | |||
340 | s = "<book><chapter>Content of the first chapter</chapter><chapter>Content of the second chapter <chapter>Content of the first subchapter</chapter> <chapter>Content of the second subchapter</chapter></chapter><chapter>Third Chapter</chapter></book>";
|
||
341 | j = XML.toJSONObject(s); |
||
342 | System.out.println(j.toString(4)); |
||
343 | System.out.println(XML.toString(j));
|
||
344 | |||
345 | final Collection c = null; |
||
346 | final Map m = null; |
||
347 | |||
348 | j = new JSONObject(m);
|
||
349 | a = new JSONArray(c);
|
||
350 | j.append("stooge", "Joe DeRita"); |
||
351 | j.append("stooge", "Shemp"); |
||
352 | j.accumulate("stooges", "Curly"); |
||
353 | j.accumulate("stooges", "Larry"); |
||
354 | j.accumulate("stooges", "Moe"); |
||
355 | j.accumulate("stoogearray", j.get("stooges")); |
||
356 | j.put("map", m);
|
||
357 | j.put("collection", c);
|
||
358 | j.put("array", a);
|
||
359 | a.put(m); |
||
360 | a.put(c); |
||
361 | System.out.println(j.toString(4)); |
||
362 | |||
363 | System.out.println("\nTesting Exceptions: "); |
||
364 | |||
365 | System.out.print("Exception: "); |
||
366 | try {
|
||
367 | System.out.println(j.getDouble("stooge")); |
||
368 | } |
||
369 | catch (final Exception e) { |
||
370 | System.out.println(e);
|
||
371 | } |
||
372 | System.out.print("Exception: "); |
||
373 | try {
|
||
374 | System.out.println(j.getDouble("howard")); |
||
375 | } |
||
376 | catch (final Exception e) { |
||
377 | System.out.println(e);
|
||
378 | } |
||
379 | System.out.print("Exception: "); |
||
380 | try {
|
||
381 | System.out.println(j.put(null, "howard")); |
||
382 | } |
||
383 | catch (final Exception e) { |
||
384 | System.out.println(e);
|
||
385 | } |
||
386 | System.out.print("Exception: "); |
||
387 | try {
|
||
388 | System.out.println(a.getDouble(0)); |
||
389 | } |
||
390 | catch (final Exception e) { |
||
391 | System.out.println(e);
|
||
392 | } |
||
393 | System.out.print("Exception: "); |
||
394 | try {
|
||
395 | System.out.println(a.get(-1)); |
||
396 | } |
||
397 | catch (final Exception e) { |
||
398 | System.out.println(e);
|
||
399 | } |
||
400 | System.out.print("Exception: "); |
||
401 | try {
|
||
402 | System.out.println(a.put(Double.NaN)); |
||
403 | } |
||
404 | catch (final Exception e) { |
||
405 | System.out.println(e);
|
||
406 | } |
||
407 | System.out.print("Exception: "); |
||
408 | try {
|
||
409 | j = XML.toJSONObject("<a><b> ");
|
||
410 | } |
||
411 | catch (final Exception e) { |
||
412 | System.out.println(e);
|
||
413 | } |
||
414 | System.out.print("Exception: "); |
||
415 | try {
|
||
416 | j = XML.toJSONObject("<a></b> ");
|
||
417 | } |
||
418 | catch (final Exception e) { |
||
419 | System.out.println(e);
|
||
420 | } |
||
421 | System.out.print("Exception: "); |
||
422 | try {
|
||
423 | j = XML.toJSONObject("<a></a ");
|
||
424 | } |
||
425 | catch (final Exception e) { |
||
426 | System.out.println(e);
|
||
427 | } |
||
428 | |||
429 | } |
||
430 | catch (final Exception e) { |
||
431 | System.out.println(e.toString());
|
||
432 | } |
||
433 | } |
||
434 | } |