Отправляет email-рассылки с помощью сервиса Sendsay

Бюллетень "Lotus Notes CodeStore"

  Все выпуски  

Developing a social networking iPhone application based on IBM Lotus Connections 2.5


Рассылку ведет: Программист на Lotus NotesLotus CoderВыпуск No 399 от 2010-10-11
рассылка о программировании на Lotus Notes/Domino
Обсуждения на форумах, блогах. Примеры программного кода на LotusScript,@formula, Java

рассылка:выпускархивлентаблогсайт

Бюллетень "Lotus Notes CodeStore" Выпуск 13 от 21.04.2008

comp.soft.prog.lotuscodesrore

CodeStore. Примеры кодов

Еще примеры:
Больше кодов на сайтах:

Форумы.Свежи темы и обсуждения

Здраствуйте!
...
Мне надо написать агент который будет обходить все доступные domino сервера и в определенной базе создавать документ

подскажите пожалуйста
1) как из Lotus Script получить доступные сервера (подозреваю что смотреть в notes.ini список доступных NAB и смотреть в них)
2) при постоновке задачи сказали что должен использоваться Directory Assistance (я не администратор но насколько понял из help это механизм позволяющий синхронизировать NAB) но как мне кажеться при программировании мне не надо учитывать наличие Directory Assistance
Доброго времени суток.

Есть у меня Java агент, в котором идёт вызов веб сервиса и последующая работа с ним и с лотусовым документом.

Агент должен вызываться из веб интерфейса.

Делал сначала его на тестовом сервере, запускал агента по кнопке с веб формы - отрабатывало всё нормально и без ошибок. У агента
стоит свойста 2. Allow restricted operation....

Перенёс весь интерфейс с агентом на продакшн сервер. Версии у серверов одинаковые 7.0.3FP1

попытался запустить агента сначала локально - всё отработало, коннект есть, действия происходят итд итп.

Потом прикрутил его опять на кнопку к веб форме - и тут в логах вот такая ерунда:

10.10.2010 17:12:42   HTTP JVM: java.security.AccessControlException: access denied (java.util.PropertyPermission axis.socketSecureFactory write)
10.10.2010 17:12:42   HTTP JVM:     at java.security.AccessControlContext.checkPermission(AccessControlContext.java:292)
10.10.2010 17:12:42   HTTP JVM:     at java.security.AccessController.checkPermission(AccessController.java:476)
10.10.2010 17:12:42   HTTP JVM:     at java.lang.SecurityManager.checkPermission(SecurityManager.java:538)
10.10.2010 17:12:42   HTTP JVM:     at java.lang.System.setProperty(System.java:726)
10.10.2010 17:12:42   HTTP JVM:     at JavaAgent.NotesMain(JavaAgent.java:43)
10.10.2010 17:12:42   HTTP JVM:     at lotus.domino.AgentBase.runNotes(Unknown Source)
10.10.2010 17:12:42   HTTP JVM:     at lotus.domino.NotesThread.run(Unknown Source)


т.е. при запуске на сервере агент выдаёт такую вот билеберду...
Перепроверил права на запуск агента на сервере у пользователя - всё ок. Сравнил настройки продакшн и тестового сервера - не нашёл больших отличий.

Не пойму с чем может ббыть связана проблема????

jvm/lib/ext папки на серверах одинаковые...


собственно сам агент:

import lotus.domino.*;

import java.net.URL;
import org.apache.axis.client.Call;
import org.apache.axis.client.Service;

import com.atlassian.jira.rpc.exception.*;
import com.atlassian.jira.rpc.soap.beans.*;

import spruapp10022.rpc.soap.jirasoapservice_v2.*;

import java.io.*;
import javax.xml.parsers.*;
import org.w3c.dom.*;
import org.xml.sax.*;

import java.io.File;
import java.io.FileInputStream;
import java.io.FileWriter;
import java.io.IOException;
import java.io.InputStream;
import java.lang.reflect.InvocationTargetException;
import java.lang.reflect.Method;
import java.net.URL;
import java.rmi.RemoteException;
import java.text.DecimalFormat;
import java.util.Calendar;
import java.util.Date;
import java.util.Vector;

public class JavaAgent extends AgentBase {

    public void NotesMain() {

        try {
            Session session = getSession();
            AgentContext agentContext = session.getAgentContext();
            lotus.domino.Document doc = agentContext.getDocumentContext();
            Database db = agentContext.getCurrentDatabase();
                                    
            // (Your code goes here)

System.setProperty("axis.socketSecureFactory",
    "com.nsftools.AxisSocketFactories.IBMFakeTrustSocketFactory");
    
          URL endpoint = new URL("http://server:8080/rpc/soap/jirasoapservice-v2?wsdl");
          
          
          Service service1 = new Service();
          JirasoapserviceV2SoapBindingStub service = new JirasoapserviceV2SoapBindingStub(endpoint,service1);
          
          
        
          String sc = service.login("****","****");
          


          String VC = "Value chain";
          String commentapp = "rjvvtyns";        
          String System = "system athenaaaaaaaaaaaaaaaah";    
          String SystemKey = "ATHN";
          String Originator = "Originator";
          
      
        
          String OriginatorDep = "ITisajasdaspdj";          
          String Subject = "Ce,]trndssdSubjectsa";


          String Type = "5";
          

          String IntrNum = "10000000";

          String AssToGroup = "Information System Group";

        
         String body = "qwqwqwqwqwqwqwqw";
                      
          RemoteIssue rIssue =  testCreateIssue(service,sc,System,VC,SystemKey,Originator,OriginatorDep,Subject,Type,IntrNum
,body, AssToGroup);                            //метод для создания нового Issue.  
        


        } catch(Exception e) {
            e.printStackTrace();
        }
    }




private static RemoteIssue testCreateIssue(JiraSoapService jiraSoapService, String token, String System, String VC, String SystemKey, String Originator, String OriginatorDep, String Subject, String Type, String IntrNum, String body, String AssToGroup)
    
throws java.rmi.RemoteException
{
    
//Timing timing = Timing.startTiming("CreateIssue");
    
try
    
{
        
// Create the issue
      
      
    
RemoteIssue issue = new RemoteIssue();
                
         issue.setProject(SystemKey);    //Проект    
         issue.setType(Type);           //Тип
         issue.setSummary(Subject);      //Summary    
         issue.setPriority("4");         //Приоритет по умолчанию
         issue.setDuedate(Calendar.getInstance());  
         issue.setAssignee("");
        
        
         // Add custom fields
         RemoteCustomFieldValue customFieldValue = new RemoteCustomFieldValue("customfield_10030", "", new String[] { System });  //System
         RemoteCustomFieldValue customFieldValue2 = new RemoteCustomFieldValue("customfield_10004", "", new String[] { Originator }); //Originator
         RemoteCustomFieldValue customFieldValue3 = new RemoteCustomFieldValue("customfield_10040", "", new String[] { OriginatorDep }); //OriginatorDep
         RemoteCustomFieldValue customFieldValue4 = new RemoteCustomFieldValue("customfield_10008", "", new String[] { body }); //body
         RemoteCustomFieldValue customFieldValue5 = new RemoteCustomFieldValue("customfield_10011", "", new String[] { VC }); //VC
         RemoteCustomFieldValue customFieldValue6 = new RemoteCustomFieldValue("customfield_10000", "", new String[] { IntrNum }); //INTR Num
         RemoteCustomFieldValue customFieldValue7 = new RemoteCustomFieldValue("customfield_10009", "", new String[] { AssToGroup }); //Assign To Group
        
        
         RemoteCustomFieldValue[] customFieldValues = new RemoteCustomFieldValue[] { customFieldValue, customFieldValue2, customFieldValue3, customFieldValue4, customFieldValue5, customFieldValue6, customFieldValue7};
         issue.setCustomFieldValues(customFieldValues);
        
        

// Run the create issue code
        
RemoteIssue returnedIssue = jiraSoapService.createIssue(token, issue);
        
final String issueKey = returnedIssue.getKey();
        
//System.out.println("\tSuccessfully created issue " + issueKey);
        
//printIssueDetails(returnedIssue);
        
return returnedIssue;
    
}
    
finally
    
{
        
//timing.printTiming();
}
}


    
}
Интересные темы:
Список форумов:

Tips. Советы

Technote #1296389 explains just how the Out Of Office diagnostic tool works in Notes version 6 through 8.5. Of course, you're still on your own to solve the most likely reason the OOO agent doesn't work, the user's misunderstanding of how it's actually supposed to work.

Read | Permalink
Christian Petters provides instructions in case you need to change your Sametime server from a Single Server to a Network Deployment gateway configuration.

Read | Permalink
Mary Beth Raven says the wording of some options in the Notes 8.5.2 calendar was changed on repeat options so they would be more international.

Read | Permalink


WHAT'S THE MOST COST-EFFECTIVE & RESPECTED TRAINING RESOURCE FOR LOTUS PROFESSIONALS?
Visit THE VIEW Online Knowledgebase at www.eview.com.

Bob Balfe says the new Mail Utilities widget is now available on OpenNTF. He's included a link to a 2-minute video showing how it works.

Read | Permalink

Yesterday I knocked together a password management page for an ASP.NET web application I've been working on.

Nothing special. Just the kind of thing any average web user would expect of a website. Most importantly, that any password change is instant. As is access after an initial registration. More than can be said of Domino.

It was always with huge professional embarrassment that I found myself having to add messages to an already-hacked version of Domino's change password form that said something along the lines of:

Your password has been changed. While this may take effect immediately, please allow up to 24 hours for this change to take place. If you find yourself unable to use your new password straight-away please continue to use your old one until it stops working, at which point you should switch to your new one.

No, seriously, I had to add that to a Domino website! Lord knows what users who read it must have thought.

Now I know there are things you can try and do to help prevent the caching of passwords in Domino, but I don't really relish the idea of calling view refreshes on the address book or whatever it is you need to do. And it misses the point that I really shouldn't have to.

Part of me always thought this would get addressed in Domino at some point, but, unless I've missed something, it's just another aspect of Domino that's gone without attention for what must be 10+ years.

So, you can imagine how nice it felt yesterday to finally have the complete control I've always wanted over things like this. Sure, I had to create the Users table in SQL and create the registration process from scratch (things that using Domino means I don't have to do), but I'd happily spend a day of my time at no cost adding my own processes, just so I know I can make a website that works like it ought to.

Click here to post a response

Еще советы:
Смотри советы на сайтах:

Блоги. Что обсуждают и пишут

Еще записи:
Интересные блоги специалистов:

Статьи и Документация

IBM® developerWorks® recently introduced its first native iPhone application to the Apple Application Store, a great tool for users to explore and discover developerWorks content and community, connect with other IT professionals and subject matter experts, and seek out opportunities to share experience.
Quick find in Trash view fails when searching by tags.
After you change the Connections preferences (File > Preferences > Connections), there is a delay before the Activities sidebar reacts to these changes. This delay is more prominent on Microsoft® Windows workstations.
Notes link icons are missing in e-mails that were published from Apple Macintosh workstations.
When user marks a to-do item as private, the option to assign the to-do item to another member should be disabled. Currently, the user can assign a private to-do item. Since the item is private, the person to whom the to-do item has been assigned does not see it.
Quick find using 'People' option in 'Browse All Entries' view only returns activities. It should find activity entries that match the search criteria as well.
Также почитатай:
Найти документацию можно на сайтах:

В избранное