Модераторы: LSD, AntonSaburov
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Ошибка при запуске jar 
:(
    Опции темы
Kverter
  Дата 29.1.2014, 11:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 15
Регистрация: 7.11.2013
Где: г. Зеленоград

Репутация: нет
Всего: нет



Здравствуйте! Собрал архив jar в JDeveloper вод код класса
Код

import java.io.IOException;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.SQLException;
import java.util.Hashtable;
import java.util.Properties;
import javax.naming.Context;
import javax.naming.NamingEnumeration;
import javax.naming.directory.Attribute;
import javax.naming.directory.Attributes;
import javax.naming.directory.DirContext;
import javax.naming.directory.InitialDirContext;
import javax.naming.directory.SearchControls;
import javax.naming.directory.SearchResult;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.sql.*;
import java.io.File;
import java.io.IOException;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.util.Iterator;
import java.util.Properties;
import java.util.Enumeration;
import java.util.Iterator;
import java.io.UnsupportedEncodingException;
import java.util.List;
import javax.naming.NamingException;
public class Class1 
{
    private static final String sFileName = "my.properties";
    private static String sDirSeparator = System.getProperty("file.separator");
    private static Properties props = new Properties();
    private static Statement st;

    public static void main(String[] args) throws Exception 
    {
       ADGroup(ADconn());
    }
    public static String PropertyReader(String arg) throws FileNotFoundException, IOException {
           
            // определяем полный путь к файлу
            String sFilePath = "C:\\config.ini";
            // создаем поток для чтения из файла
            FileInputStream ins = new FileInputStream(sFilePath);
            // загружаем свойств
            props.load(ins);
            //System.out.println(props.getProperty(arg));
       
            return props.getProperty(arg);
        }
    public static Statement JDBCConn() throws SQLException, FileNotFoundException, IOException {
          
    String user = PropertyReader("LoginDB");//Логин пользователя
    String password = PropertyReader("PasswordDB");//Пароль пользователя
    String url = PropertyReader("URLDB");//URL адрес
    String driver = "oracle.jdbc.OracleDriver";//Имя драйвера
    try {
    Class.forName("oracle.jdbc.OracleDriver");//Регистрируем драйвер
    } catch (ClassNotFoundException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
    }
    Connection c = null;//Соединение с БД
    //подготавливаем запрос с параметрами
        
        c = DriverManager.getConnection (url, user, password);
             Statement st = c.createStatement();
             System.out.println("CONNECT");
             return st;
    }      
    public static void ADGroup(DirContext arg) throws FileNotFoundException, IOException, SQLException, NamingException, Exception {
       Statement st = Class1.JDBCConn();
        DirContext GroupContext = arg;
        SearchControls GroupControls = new SearchControls();
        GroupControls.setReturningAttributes(new String[] {"name","member"});
        GroupControls.setSearchScope(SearchControls.SUBTREE_SCOPE);
       NamingEnumeration results = GroupContext.search(PropertyReader("linesearch"),"(&(objectCategory=group)(name=0BSL*))", GroupControls);
       //////////////////////////////////////////////////////////////////////////////
       //  SearchControls usersControls = new SearchControls();
       // usersControls.setReturningAttributes(new String[] {"name"});
       // usersControls.setSearchScope(SearchControls.SUBTREE_SCOPE);
                  // Цикл по группам (Organisation Unit'ам) 
        int k =0;
        String userPrincipalName;
                  while (results != null && results.hasMoreElements()) 
                  {
                      
                      String role = "";
                      SearchResult result = (SearchResult) results.next();
                      Attribute attribute = result.getAttributes().get("name");
                      if (attribute == null) {
                          continue;
                      }
                      String groupName = (String) attribute.get();
                       //String groupDN = (String) result.getAttributes().get( "distinguishedName").get();
                        String memberOF = "";

           System.out.println("Group = "+groupName);
           
                      if (result.getAttributes().get("member")!=null)
                      {
                   NamingEnumeration member = result.getAttributes().get( "member").getAll();
                   int v=member.hashCode();
                   while((member!=null)&&(member.hasMoreElements()))
                   {
                          //System.out.println("HROUPNAME = "+groupName+ " memberOF = "+member.next());
                          Connection C= JDBCConnC();
                           memberOF = ""+member.next();
                       userPrincipalName=FindUser(memberOF,ADconn());
                       userPrincipalName=userPrincipalName.toUpperCase();
                       //userPrincipalName="'"+userPrincipalName+"'";
                       boolean c=find(userPrincipalName,st);
                           if (userPrincipalName!="")
                               {
                                if (!find(userPrincipalName,st)) 
                                {
                       String NameProced=NameProcedure(groupName,st);
                       String CallProced = "{ call "+NameProced+"(?) }";
                           try {
                       CallableStatement proc = C.prepareCall(CallProced);
                               proc.setString(1,userPrincipalName);  
                               proc.execute();
                               C.close(); 
                               }
                           catch (SQLException e) { e.printStackTrace();}
                                 }
                       //data[0]=memberOF;
                      // memberOF=memberOF.replaceAll(",DC=office,DC=elvis,DC=ru", "");
                       }
                   }
                      }
           //System.out.println("ROLE = "+role); 
           //CreateUserstables(groupName,Class1.find(groupName,st),st,role);
                       //k = k+1;
           
       }
        //System.out.println(k);
       }
    public static String FindUser(String arg,DirContext arg2) throws FileNotFoundException, IOException, NamingException {
        DirContext UserContext = arg2;
        SearchControls UserControls = new SearchControls();
        UserControls.setReturningAttributes(new String[] {"userPrincipalName"});
        UserControls.setSearchScope(SearchControls.SUBTREE_SCOPE);
        NamingEnumeration results = UserContext.search(arg,"(&(objectCategory=user))", UserControls);
       //////////////////////////////////////////////////////////////////////////////
                  // Цикл по группам (Organisation Unit'ам) 
        int k =0;
           String userPrincipalName = "";
                  while (results != null && results.hasMoreElements()) 
                  {
                      SearchResult result = (SearchResult) results.next();
                      Attribute attribute = result.getAttributes().get("userPrincipalName");
                      if (attribute == null) {
                          continue;
                      }
                      String UserName = (String) attribute.get();
                       //String groupDN = (String) result.getAttributes().get( "distinguishedName").get();
                        //String memberOF = "";


           System.out.println("UsersName = "+UserName);
                      userPrincipalName = UserName;
       
                       
                    //  if (result.getAttributes().get("memberOf")!=null)
                   //   {
                    ///memberOF = (String) result.getAttributes().get( "memberOf").get();
                     ///     System.out.println("HROUPNAME = "+groupName+ " memberOF = "+memberOF);
                    //  }
           //CreateUserstables(groupName,Class1.find(groupName,st),st,role);
                      // k = k+1;
           
       }
       // System.out.println(k);
        return userPrincipalName;          
       }
    public static String NameProcedure(String arg,Statement arg2) throws SQLException {
       String query = "select PROCEDURE_NAME from GROUPS_PROCEDURE where GROUP_NAME = '"+arg+"'";
       ResultSet rs = arg2.executeQuery(query);
       String s="";
       while(rs.next())
       {
           
       //обработка результатов
           s = rs.getString(1);
           System.out.println(s);
        }
       return s;
    }
    public static Connection JDBCConnC() throws SQLException, FileNotFoundException, IOException {
          
    String user = PropertyReader("LoginDB");//Логин пользователя
    String password = PropertyReader("PasswordDB");//Пароль пользователя
    String url = PropertyReader("URLDB");//URL адрес
    String driver = "oracle.jdbc.OracleDriver";//Имя драйвера
    try {
    Class.forName("oracle.jdbc.OracleDriver");//Регистрируем драйвер
    } catch (ClassNotFoundException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
    }
    Connection c = null;//Соединение с БД
    //подготавливаем запрос с параметрами
        
        c = DriverManager.getConnection (url, user, password);
             //Statement st = c.createStatement();
             //System.out.println("CONNECT");
             return c;
    } 
    public static DirContext ADconn() throws NamingException, FileNotFoundException, IOException 
    {
        Properties env = new Properties();
        env.setProperty(Context.INITIAL_CONTEXT_FACTORY,"com.sun.jndi.ldap.LdapCtxFactory");
        env.setProperty(Context.PROVIDER_URL,PropertyReader("ldap"));
        env.setProperty(Context.SECURITY_PRINCIPAL, PropertyReader("ADlogin"));
        env.setProperty(Context.SECURITY_CREDENTIALS, PropertyReader("ADpassword"));
        
         DirContext UsersContext = new InitialDirContext(env);
         return UsersContext; 
    }
    public static boolean find(String args,Statement args3) throws SQLException
                             {
                                     //JDBCConn();
                                     String query = "select user_name from users where user_name = \'"+args+"\'";
                                     ResultSet rs = args3.executeQuery(query);
                                     String s = "";
                                    
                                     while(rs.next()){
                                         
                                     //обработка результатов
                                         s = rs.getString(1);
                                         //System.out.println(s);
                                                   }
                                    if (s =="")
                                    {
                                            return false;
                                        } else return true;
                                 }
}

при попытке запустить ругается что не находит драйвер оркл как запустить правельно???7при сборке вроде указал на драйвер
вот скрин




Присоединённый файл ( Кол-во скачиваний: 8 )
Присоединённый файл  Безымянный.jpg 50,11 Kb
PM MAIL   Вверх
polosatij
  Дата 25.7.2014, 01:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1143
Регистрация: 22.2.2004
Где: Stuttgart<-> ;Karlsruhe, Germany

Репутация: нет
Всего: 8



нам не хватает Exception-а, чтоб дать вам какой-то путёвый совет..


--------------------
PM   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Java"
LSD   AntonSaburov
powerOn   tux
  • Прежде, чем задать вопрос, прочтите это!
  • Книги по Java собираются здесь.
  • Документация и ресурсы по Java находятся здесь.
  • Используйте теги [code=java][/code] для подсветки кода. Используйтe чекбокс "транслит", если у Вас нет русских шрифтов.
  • Помечайте свой вопрос как решённый, если на него получен ответ. Ссылка "Пометить как решённый" находится над первым постом.
  • Действия модераторов можно обсудить здесь.
  • FAQ раздела лежит здесь.

Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Java tools & IDE's | Следующая тема »


 




[ Время генерации скрипта: 0.1231 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.