1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 | <span class = "kwd" > package </span><span class = "pln" > com</span><span class = "pun" >.</span><span class = "pln" >empresa</span><span class = "pun" >;</span><span class = "pln" > </span><span class = "kwd" > import </span><span class = "pln" > java</span><span class = "pun" >.</span><span class = "pln" >util</span><span class = "pun" >.</span><span class = "typ" >Hashtable</span><span class = "pun" >;</span><span class = "pln" > </span><span class = "kwd" > import </span><span class = "pln" > javax</span><span class = "pun" >.</span><span class = "pln" >naming</span><span class = "pun" >.</span><span class = "typ" >Context</span><span class = "pun" >;</span><span class = "pln" > </span><span class = "kwd" > import </span><span class = "pln" > javax</span><span class = "pun" >.</span><span class = "pln" >naming</span><span class = "pun" >.</span><span class = "pln" >directory</span><span class = "pun" >.</span><span class = "typ" >BasicAttribute</span><span class = "pun" >;</span><span class = "pln" > </span><span class = "kwd" > import </span><span class = "pln" > javax</span><span class = "pun" >.</span><span class = "pln" >naming</span><span class = "pun" >.</span><span class = "pln" >directory</span><span class = "pun" >.</span><span class = "typ" >DirContext</span><span class = "pun" >;</span><span class = "pln" > </span><span class = "kwd" > import </span><span class = "pln" > javax</span><span class = "pun" >.</span><span class = "pln" >naming</span><span class = "pun" >.</span><span class = "pln" >directory</span><span class = "pun" >.</span><span class = "typ" >InitialDirContext</span><span class = "pun" >;</span><span class = "pln" > </span><span class = "kwd" > import </span><span class = "pln" > javax</span><span class = "pun" >.</span><span class = "pln" >naming</span><span class = "pun" >.</span><span class = "pln" >directory</span><span class = "pun" >.</span><span class = "typ" >ModificationItem</span><span class = "pun" >;</span><span class = "pln" > </span><span class = "kwd" > public </span><span class = "pln" > </span><span class = "kwd" > class </span><span class = "pln" > </span><span class = "typ" >ActualizarLDAP</span><span class = "pln" > </span><span class = "pun" >{</span><span class = "pln" > </span><span class = "kwd" > private </span><span class = "pln" > </span><span class = "typ" >DirContext</span><span class = "pln" > dirContext </span><span class = "pun" >=</span><span class = "pln" > </span><span class = "kwd" > null </span><span class = "pun" >;</span><span class = "pln" > </span><span class = "typ" >ModificationItem</span><span class = "pun" >[]</span><span class = "pln" > modItemsOne </span><span class = "pun" >=</span><span class = "pln" > </span><span class = "kwd" > new </span><span class = "pln" > </span><span class = "typ" >ModificationItem</span><span class = "pun" >[</span><span class = "lit" > 1 </span><span class = "pun" >];</span><span class = "pln" > </span><span class = "kwd" > public </span><span class = "pln" > </span><span class = "typ" >ActualizarLDAP</span><span class = "pun" >()</span><span class = "pln" > </span><span class = "pun" >{</span><span class = "pln" > </span><span class = "kwd" > try </span><span class = "pln" > </span><span class = "pun" >{</span><span class = "pln" > </span><span class = "typ" >String</span><span class = "pln" > url </span><span class = "pun" >=</span><span class = "pln" > </span><span class = "str" > "ldap://<IP_SERVER>:389" </span><span class = "pun" >;</span><span class = "pln" > </span><span class = "typ" >String</span><span class = "pln" > conntype </span><span class = "pun" >=</span><span class = "pln" > </span><span class = "str" > "simple" </span><span class = "pun" >;</span><span class = "pln" > </span><span class = "typ" >String</span><span class = "pln" > </span><span class = "typ" >AdminDn</span><span class = "pln" > </span><span class = "pun" >=</span><span class = "pln" > </span><span class = "str" > "cn=root" </span><span class = "pun" >;</span><span class = "pln" > </span><span class = "typ" >String</span><span class = "pln" > password </span><span class = "pun" >=</span><span class = "pln" > </span><span class = "str" > "xxx" </span><span class = "pun" >;</span><span class = "pln" > </span><span class = "typ" >Hashtable</span><span class = "pun" ><</span><span class = "typ" >String</span><span class = "pun" >,</span><span class = "pln" > </span><span class = "typ" >String</span><span class = "pun" >></span><span class = "pln" > environment </span><span class = "pun" >=</span><span class = "pln" > </span><span class = "kwd" > new </span><span class = "pln" > </span><span class = "typ" >Hashtable</span><span class = "pun" ><</span><span class = "typ" >String</span><span class = "pun" >,</span><span class = "pln" > </span><span class = "typ" >String</span><span class = "pun" >>();</span><span class = "pln" > </span><span class = "typ" >Hashtable</span><span class = "pun" ><</span><span class = "typ" >String</span><span class = "pun" >,</span><span class = "pln" > </span><span class = "typ" >String</span><span class = "pun" >></span><span class = "pln" > environmentVar </span><span class = "pun" >=</span><span class = "pln" > </span><span class = "kwd" > new </span><span class = "pln" > </span><span class = "typ" >Hashtable</span><span class = "pun" ><</span><span class = "typ" >String</span><span class = "pun" >,</span><span class = "pln" > </span><span class = "typ" >String</span><span class = "pun" >>();</span><span class = "pln" > environmentVar</span><span class = "pun" >.</span><span class = "pln" >put</span><span class = "pun" >(</span><span class = "typ" >Context</span><span class = "pun" >.</span><span class = "pln" >INITIAL_CONTEXT_FACTORY</span><span class = "pun" >,</span><span class = "pln" > </span><span class = "str" > "com.sun.jndi.ldap.LdapCtxFactory" </span><span class = "pun" >);</span><span class = "pln" > environmentVar</span><span class = "pun" >.</span><span class = "pln" >put</span><span class = "pun" >(</span><span class = "typ" >Context</span><span class = "pun" >.</span><span class = "pln" >PROVIDER_URL</span><span class = "pun" >,</span><span class = "pln" > url</span><span class = "pun" >);</span><span class = "pln" > environmentVar</span><span class = "pun" >.</span><span class = "pln" >put</span><span class = "pun" >(</span><span class = "typ" >Context</span><span class = "pun" >.</span><span class = "pln" >SECURITY_AUTHENTICATION</span><span class = "pun" >,</span><span class = "pln" > conntype</span><span class = "pun" >);</span><span class = "pln" > environmentVar</span><span class = "pun" >.</span><span class = "pln" >put</span><span class = "pun" >(</span><span class = "typ" >Context</span><span class = "pun" >.</span><span class = "pln" >SECURITY_PRINCIPAL</span><span class = "pun" >,</span><span class = "pln" > </span><span class = "typ" >AdminDn</span><span class = "pun" >);</span><span class = "pln" > environmentVar</span><span class = "pun" >.</span><span class = "pln" >put</span><span class = "pun" >(</span><span class = "typ" >Context</span><span class = "pun" >.</span><span class = "pln" >SECURITY_CREDENTIALS</span><span class = "pun" >,</span><span class = "pln" > password</span><span class = "pun" >);</span><span class = "pln" > dirContext </span><span class = "pun" >=</span><span class = "pln" > </span><span class = "kwd" > new </span><span class = "pln" > </span><span class = "typ" >InitialDirContext</span><span class = "pun" >(</span><span class = "pln" >environmentVar</span><span class = "pun" >);</span><span class = "pln" > </span><span class = "pun" >}</span><span class = "pln" > </span><span class = "kwd" > catch </span><span class = "pln" > </span><span class = "pun" >(</span><span class = "typ" >Exception</span><span class = "pln" > ee</span><span class = "pun" >)</span><span class = "pln" > </span><span class = "pun" >{</span><span class = "pln" > ee</span><span class = "pun" >.</span><span class = "pln" >printStackTrace</span><span class = "pun" >();</span><span class = "pln" > </span><span class = "pun" >}</span><span class = "pln" > </span><span class = "pun" >}</span><span class = "pln" > </span><span class = "kwd" > public </span><span class = "pln" > </span><span class = "kwd" > boolean </span><span class = "pln" > updateJPEGPHOTO</span><span class = "pun" >(</span><span class = "typ" >String</span><span class = "pln" > entryDN</span><span class = "pun" >,</span><span class = "pln" > </span><span class = "typ" >String</span><span class = "pln" > base64</span><span class = "pun" >)</span><span class = "pln" > </span><span class = "pun" >{</span><span class = "pln" > </span><span class = "kwd" > boolean </span><span class = "pln" > flag </span><span class = "pun" >=</span><span class = "pln" > </span><span class = "kwd" > false </span><span class = "pun" >;</span><span class = "pln" > </span><span class = "kwd" > try </span><span class = "pln" > </span><span class = "pun" >{</span><span class = "pln" > modItemsOne</span><span class = "pun" >[</span><span class = "lit" > 0 </span><span class = "pun" >]</span><span class = "pln" > </span><span class = "pun" >=</span><span class = "pln" > </span><span class = "kwd" > new </span><span class = "pln" > </span><span class = "typ" >ModificationItem</span><span class = "pun" >(</span><span class = "typ" >DirContext</span><span class = "pun" >.</span><span class = "pln" >REPLACE_ATTRIBUTE</span><span class = "pun" >,</span><span class = "pln" > </span><span class = "kwd" > new </span><span class = "pln" > </span><span class = "typ" >BasicAttribute</span><span class = "pun" >(</span><span class = "str" > "jpegPhoto" </span><span class = "pun" >,</span><span class = "pln" > base64</span><span class = "pun" >));</span><span class = "pln" > dirContext</span><span class = "pun" >.</span><span class = "pln" >modifyAttributes</span><span class = "pun" >(</span><span class = "pln" >entryDN</span><span class = "pun" >,</span><span class = "pln" > modItemsOne</span><span class = "pun" >);</span><span class = "pln" > flag </span><span class = "pun" >=</span><span class = "pln" > </span><span class = "kwd" > true </span><span class = "pun" >;</span><span class = "pln" > </span><span class = "pun" >}</span><span class = "pln" > </span><span class = "kwd" > catch </span><span class = "pln" > </span><span class = "pun" >(</span><span class = "typ" >Exception</span><span class = "pln" > exception</span><span class = "pun" >)</span><span class = "pln" > </span><span class = "pun" >{</span><span class = "pln" > exception</span><span class = "pun" >.</span><span class = "pln" >printStackTrace</span><span class = "pun" >();</span><span class = "pln" > </span><span class = "pun" >}</span><span class = "pln" > </span><span class = "kwd" > return </span><span class = "pln" > flag</span><span class = "pun" >;</span><span class = "pln" > </span><span class = "pun" >}</span><span class = "pln" > </span><span class = "kwd" > public </span><span class = "pln" > </span><span class = "kwd" > static </span><span class = "pln" > </span><span class = "kwd" > void </span><span class = "pln" > main</span><span class = "pun" >(</span><span class = "typ" >String</span><span class = "pun" >[]</span><span class = "pln" > args</span><span class = "pun" >){</span><span class = "pln" > </span><span class = "typ" >String</span><span class = "pln" > entryDN </span><span class = "pun" >=</span><span class = "pln" > </span><span class = "str" > "uid=example,O=EMPRESA" </span><span class = "pun" >;</span><span class = "pln" > </span><span class = "typ" >String</span><span class = "pln" > base64 </span><span class = "pun" >=</span><span class = "pln" > </span><span class = "str" > "data:image/png;base64,iVBORw0KGgoAAAANSUh..." </span><span class = "pun" >;</span><span class = "pln" > </span><span class = "typ" >ActualizarLDAP</span><span class = "pln" > actualizarLDAP </span><span class = "pun" >=</span><span class = "pln" > </span><span class = "kwd" > new </span><span class = "pln" > </span><span class = "typ" >ActualizarLDAP</span><span class = "pun" >();</span><span class = "pln" > </span><span class = "kwd" > if </span><span class = "pln" > </span><span class = "pun" >(</span><span class = "pln" >actualizarLDAP</span><span class = "pun" >.</span><span class = "pln" >updateJPEGPHOTO</span><span class = "pun" >(</span><span class = "pln" >entryDN</span><span class = "pun" >,</span><span class = "pln" > base64</span><span class = "pun" >))</span><span class = "pln" > </span><span class = "pun" >{</span><span class = "pln" > </span><span class = "typ" >System</span><span class = "pun" >.</span><span class = "kwd" >out</span><span class = "pun" >.</span><span class = "pln" >println</span><span class = "pun" >(</span><span class = "str" > "Foto actualizada" </span><span class = "pun" >);</span><span class = "pln" > </span><span class = "pun" >}</span><span class = "pln" > </span><span class = "kwd" > else </span><span class = "pln" > </span><span class = "pun" >{</span><span class = "pln" > </span><span class = "typ" >System</span><span class = "pun" >.</span><span class = "kwd" >out</span><span class = "pun" >.</span><span class = "pln" >println</span><span class = "pun" >(</span><span class = "str" > "Fallo actualizar foto" </span><span class = "pun" >);</span><span class = "pln" > </span><span class = "pun" >}</span><span class = "pln" > </span><span class = "pun" >}</span><span class = "pln" > </span><span class = "pun" >}</span><span class = "pln" > </span> |
Fuente:
- http://java2db.com/jndi-ldap-programming/update-or-modify-ldap-entry-using-java-jndi
- http://www.coderpanda.com/tag/update-attribute-in-ldap-using-java/